Вперед Зміст

Варіанти задач

Усі завдання вирішувати з використанням map та множин.

  1. Введіть з клавіатури декілька рядків. У кожному рядку країна та кількість людей, що там живуть. Сформувати з введених даних map. Вивести список на екран. Ввести країну та якщо така країна існує у списку, то з’ясувати, скільки в ній людей. Якщо немає, то вивести повідомлення
  2. Є два map з однаковими типами даних. Необхідно їх об’єднати. Дані не вводити, а ініціалізувати значення у програми.
  3. Ввести число N — кількість пар. Ввести пари: країна та її столиця. Сформувати з введених даних map. Вивести список на екран. Ввести країну та якщо така країна існує, то вивести її столицю. Якщо немає, то вивести повідомлення
  4. Ввести з клавіатури рядок зі списком імен (де деякі повторюються). Потрібно для кожного імені з’ясувати, скільки разів воно зустрічається. Визначити ім’я, яке зустрічається найчастіше.
  5. Магазин товарів. Введіть з клавіатури декілька рядків. У кожному рядку назва товару та ціна. Зберігати ціни товарів за їх назвою. Реалізувати пошук ціни товару за його назвою.
  6. Телефонна книга. Введіть з клавіатури декілька рядків. У кожному рядку прізвище та номер телефону. Зберігати номера телефонів за прізвищем. Реалізувати пошук телефону за прізвищем.
  7. Введіть з клавіатури декілька рядків. У кожному рядку прізвище студента та оцінка за іспит. Потрібно підрахувати, скільки студентів отримали кожну оцінку.
  8. Підрахунок голосів за кандидата. Ввести список імен кандидатів (одне ім’я — один голос) і вивести результат голосування: ім’я кандидата та кількість голосів. Знайти ім’я переможця.
  9. Введіть кілька оцінок з клавіатури та для кожної оцінки виведіть скільки разів вона зустрічається.
  10. Зчитати рядок тексту і підрахувати, скільки разів зустрічається кожне слово. Зробити словник: слово, скільки разів зустрічається. Знайти найрідше слово (тобто слово з найменшою кількістю повторень). Якщо таких слів декілька, то вибрати з них те, що має більшу довжину.
  11. Зчитати рядок тексту і підрахувати, скільки разів зустрічається кожне слово. Зробити словник: слово, скільки разів зустрічається. Знайти слово з найбільшою кількістю повторень. Якщо таких слів декілька, то вибрати з них те, що більше у лексикографічному порядку.
  12. Зчитати рядок тексту і підрахувати, скільки разів зустрічається кожна літера. Зробити словник: літера, скільки разів зустрічається. Знайти літеру з найбільшою кількістю повторень.
  13. Задано словник перекладу кольорів з англійської мови на польську (пари англійська: польська). Словник не вводити, а ініціалізувати значення у програми. Усі слова у словнику різні. Потім:
    1. Вивести весь словник.
    2. Вивести переклад останнього слова у словнику.
    3. Ввести з клавіатури англійське слово. Якщо воно є у словнику видаліть його. Якщо такого слова немає, то вивести повідомлення.
  14. Введіть з клавіатури декілька рядків. У кожному рядку номер дома та кількість людей, що там живуть. Далі виконати дії, в залежності від введеного пункту меню:
    1. Вивести список на екран.
    2. Ввести номер дома та якщо такий дім є, то з’ясувати, скільки людей там проживає. Якщо немає, то вивести повідомлення.
    3. Ввести номер дома та якщо такий дім є, то видалити інформацію про нього. Якщо немає, то вивести повідомлення. Вивести змінений список на екран.
    4. Ввести номер дома та якщо такий дім є, вивести повідомлення. Якщо немає, то ввести інформацію про кількість людей у ньому та дописати у список. Вивести змінений список на екран.
  15. Введіть з клавіатури декілька рядків. У кожному рядку клас та кількість учнів, що там навчаються. Далі виконати дії, в залежності від введеного пункту меню:
    1. Вивести список на екран.
    2. Ввести клас та якщо такий клас існує, то з’ясувати, скільки дітей у цьому класі. Якщо немає, то вивести повідомлення.
    3. Ввести клас та якщо такий клас є, то видалити інформацію про нього. Якщо немає, то вивести повідомлення. Вивести змінений список на екран.
    4. Ввести клас та якщо такий клас є, вивести повідомлення. Якщо немає, то ввести інформацію про кількість учнів у ньому та дописати у список. Вивести змінений список на екран.
  16. Ввести з клавіатури пари: прізвище – група. Одна людина може входити в кілька груп, і в кожній групі — багато людей. На основі цього списку побудувати структуру група - список учасників. Вивести для кожної групи її учасників. Наприклад,
    
    ввід
    ivanov GroupA  
    petrov GroupA  
    lee GroupB  
    ivanov GroupB  
    end
    вивід 
    GroupA: ivanov petrov  
    GroupB: lee ivanov  
    
  17. У базі даних ветеринарної клініки інформація про пацієнтів-котів зберігається у масиві структур. Дані про кішок та їх власників записані у форматі «кличка тварини, вік тварини, прізвище власника»:
    
    struct person
    {
      string name;
      int age;
      string owner;
    };
    struct person cat[10];
    struct person cats[] ={
    {"Мартін", "5", "Єгоров"},  {"Муся", "7","Петренко"},
    {"Ізольда", 2, "Петренко"}, {"Снейп", 1, "Коваленко"},
    {"Лютик", 4, "Соломко"},    {"Сніжок", 3, "Коваленко"},
    {"Березня", 5,"Сидоренко"}, {"Буся", 12, "Федоренко"},
    {"Барсик", 2, "Соломка"},   {"Матільда", 8, "Петренко"}};
    

    Виявилося, що імена деяких власників повторюються, бо мають кілька кішок. Необхідно оптимізувати зберігання даних таким чином, щоб для кожного власника при виведенні на друк дані про всіх тварин відображалися в одному рядку. Наприклад,

    Петренко: Муся 7, Ізольда 2

Вперед Зміст