Bekchanov Bekzod Amaliy ish №5 Mavzu: Аssotsiativ konteynerlar (map, multimap). Tartiblanmagan assotsiativ konteynerlar (unordered map, unordered multimap) Masala sharti
Download 30.7 Kb.
|
5-amaliy ish
- Bu sahifa navigatsiya:
- Dastur kodi
942-22 Bekchanov Bekzod Amaliy ish №5 Mavzu: Аssotsiativ konteynerlar (map, multimap). Tartiblanmagan assotsiativ konteynerlar (unordered_map, unordered_multimap) Masala sharti: Talabalar haqida (familiya, ismi, sharfi, viloyat, tuman va qishloq) to’plam berilgan. Har bir viloyatda nechta talaba borligini aniqlovchi va viloyat, tuman bo’yich talabalarni qidiruvchi dastur tuzing. Dastur kodi: #include #include #include #include using namespace std; // Talaba klasi
// Viloyatdagi talabalarni sanash funksiyasi int countTalabalar(vector int count = 0; for (int i = 0; i < talabalar.size(); i++) { if (talabalar[i].viloyat == viloyat) { count++; } } return count; } // Viloyat va tumandagi talabalarni qidiruvchi funksiya void searchTalabalar(vector bool found = false; for (int i = 0; i < talabalar.size(); i++) { if (talabalar[i].viloyat == viloyat && talabalar[i].tuman == tuman) { cout << talabalar[i].familiya << " " << talabalar[i].ism << " " << talabalar[i].sharif << endl; found = true; } } if (!found) { cout << "Bunday talabalar topilmadi" << endl; } } int main() { // Foydalanuvchi tomonidan kiritilgan fayl nomi string filename; cout << "Ma'lumotlar faylini kiriting: "; cin >> filename; // Fayldan ma'lumotlarni o'qish ifstream file(filename); if (!file.is_open()) { cerr << "Fayl ochib bo'lmadi" << endl; return 1; } vector Talaba talaba; while (file >> talaba.familiya >> talaba.ism >> talaba.sharif >> talaba.viloyat >> talaba.tuman >> talaba.qishloq) { talabalar.push_back(talaba); } // Viloyatlarga ko'ra talabalar sonini hisoblash va chiqarish cout << "Viloyatlarga ko'ra talabalar soni:" << endl; cout << "Andijon: " << countTalabalar(talabalar, "Andijon") << endl; cout << "Buxoro: " << countTalabalar(talabalar, "Buxoro") << endl; cout << "Jizzax: " << countTalabalar(talabalar, "Jizzax") << endl; cout << "Qashqadaryo: " << countTalabalar(talabalar, "Qashqadaryo") << endl; cout << "Samarqand: " << countTalabalar(talabalar, "Samarqand") << endl; cout << "Toshkent: " << countTalabalar(talabalar, "Toshkent") << endl; // Viloyat va tuman bo'yicha talabalar qidirish string viloyat, tuman; cout << "Viloyat va tumanni kiriting: "; cin >> viloyat >> tuman; cout << "Quyidagi talabalar topildi:" << endl; searchTalabalar(talabalar, viloyat, tuman); return 0; } Natija: Download 30.7 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling