O‘ZBEKISTON RESPUBLIKASI RAQAMLI
TEXNOLOGIYALAR VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT
AXBOROT TEXNOLOGIYALARI UNIVERSITETI
Amaliy ish
Topshirdi: 083-23 guruh talabasi
Yusupov Lochinbek
Qabul qildi: ___________
Toshkent 2025
1-Amaliy topshiriq
Array va deque konteyneriga oid masalalar
Ishning maqsadi Array va deque konteynerlariga oid bilim va ko’nikmalarini shakllantirish.
27
bir_juft_oxirgi_toq_sum() funskiyasini yarating. Array konteynerining birinchi
juft va oxirgi toq elementlari yig’indisini qaytarsin.
#include <iostream>
#include <array>
using namespace std;
int bir_juft_oxirgi_toq_sum(const array<int, 10>& arr) {
int birinchi_juft = -1;
int oxirgi_toq = -1;
for (int i = 0; i < arr.size(); i++) {
if (arr[i] % 2 == 0) {
birinchi_juft = arr[i];
break;
}
}
for (int i = arr.size() - 1; i >= 0; i--) {
if (arr[i] % 2 != 0) {
oxirgi_toq = arr[i];
break;
}
}
// Agar biri topilmasa, -1 qaytadi
if (birinchi_juft == -1 || oxirgi_toq == -1)
return -1;
return birinchi_juft + oxirgi_toq;
}
int main() {
array<int, 10> sonlar;
cout << "10 ta son kiriting:\n";
for (int i = 0; i < sonlar.size(); i++) {
cout << i + 1 << "-son: ";
cin >> sonlar[i];
}
int natija = bir_juft_oxirgi_toq_sum(sonlar);
if (natija == -1) {
cout << "Birinchi juft yoki oxirgi toq son topilmadi.\n";
} else {
cout << "Birinchi juft va oxirgi toq sonlar yig'indisi: " << natija <<
endl;
}
return 0;
}