Написати програму – список групи студентів. Для цього побудувати асоціативний список map для збереження імен, проіндексованих прізвищами студентів. За заданим прізвищем знайти та вивести на екран ім’я студента.
Ось приклад програми на C++, що використовує асоціативний список map для збереження списку групи студентів та пошуку імені студента за заданим прізвищем:
У цій програмі ми створили асоціативний список studentList типу map, де ключем є прізвище студента (тип std::string), а значенням - ім'я студента (тип std::string). Потім ми додали декілька студентів до списку за допомогою операції []. Для пошуку імені студента за заданим прізвищем ми використали функцію find() та ітератор it. Якщо студент був знайдений, то ми вивели його ім'я на екрані. Інакше, ми вивели повідомлення "Student not found!".
staskobzak596
Ви вже дали коронку іншому користувачу
yurabrodzinskyy
я вибачась, я напевно натиснув на корону під іншим коментарем і тому неможу тут її натиснути. Я обовязково наступного разу відмічу вас як "краща відповідь"!!!
Answers & Comments
Ответ:
Ось приклад програми на C++, що використовує асоціативний список map для збереження списку групи студентів та пошуку імені студента за заданим прізвищем:
#include <iostream>
#include <map>
#include <string>
int main() {
// Створення асоціативного списку map
std::map<std::string, std::string> studentList;
// Додавання студентів до списку
studentList["Ivanov"] = "Ivan";
studentList["Petrov"] = "Peter";
studentList["Sidorov"] = "Sergey";
studentList["Kozlov"] = "Alexey";
// Запит імені студента за прізвищем
std::string surname;
std::cout << "Enter student's surname: ";
std::cin >> surname;
// Пошук та виведення імені студента
std::map<std::string, std::string>::iterator it;
it = studentList.find(surname);
if (it != studentList.end()) {
std::cout << "Student's name: " << it->second << std::endl;
} else {
std::cout << "Student not found!" << std::endl;
}
return 0;
}
Приклад виконання програми:
Enter student's surname: Ivanov
Student's name: Ivan
Объяснение:
У цій програмі ми створили асоціативний список studentList типу map, де ключем є прізвище студента (тип std::string), а значенням - ім'я студента (тип std::string). Потім ми додали декілька студентів до списку за допомогою операції []. Для пошуку імені студента за заданим прізвищем ми використали функцію find() та ітератор it. Якщо студент був знайдений, то ми вивели його ім'я на екрані. Інакше, ми вивели повідомлення "Student not found!".
Verified answer
Ответ:
#include <iostream>
#include <map>
#include <string>
int main() {
std::map<std::string, std::string> studentMap; // Створюємо асоціативний список
// Додаємо студентів до списку (ключ - прізвище, значення - ім'я)
studentMap["Ivanov"] = "Ivan";
studentMap["Petrov"] = "Peter";
studentMap["Sidorov"] = "Sidor";
studentMap["Kozlov"] = "Kozel";
// Запитуємо прізвище та виводимо ім'я студента за заданим ключем (прізвищем)
std::string lastName;
std::cout << "Enter student's last name: ";
std::cin >> lastName;
auto iter = studentMap.find(lastName); // Шукаємо елемент з заданим ключем
if (iter != studentMap.end()) {
std::cout << "Student's name: " << iter->second << std::endl; // Виводимо значення, що відповідає знайденому ключу
} else {
std::cout << "Student not found" << std::endl;
}
return 0;
}