Вопрос задан 27.06.2023 в 12:56. Предмет Информатика. Спрашивает Король Тёма.

Составить программу,которая описывает массив структур-телефонный справочник одноклассников,в

котором будут отражены ФИ,адрес,телефон,хобби Пусть в этом массиве отражены 10 одноклассников Программа должна выполнять:ввод данных,поиск номеров телефона по фи,подсчет и вывод списком одноклассников по хобби(например:хобби игры-вася петров,ива иванов)
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Хисамиева Ясмина.

в итоге. Пол часа бился с выводом хобби и криво косо, но сделал.

На всякий кину в pastebin: https://pastebin.com/QwZRWA7b

По задания мне проверки делать я как понял не надо было.

Если что, пиши. А так сам на свой вкус поправить можешь.

10 имен лень делать было, так что думаю сам уже добавишь)

class Program:

   def __init__(self):

       self.massiv = {0: ["Кут Артём", "д11 Ул.Ленина", "89045161712", "Рисование"],

         1: ["Бояр Андрей", "д22 Ул.Пушкина", "89718121712", "Рисование"],

         2: ["Прос Ира", "д11 Ул.Ленина", "89045561712", "Спорт"],}

   def menu(self):

       print("\n1) Добавить нового одноклассника в список\n2)найти ФИ по номеру телефона\n3)Вывод хобби одноклассниокв\n")

       a = input(": ")

       if a == "1":

           Program.Create(self)

       elif a == "2":

           Program.findFI(self)

       elif a == "3":

           Program.findHobby(self)

   def Create(self):

       while 1:

           if input(("1) Добавить нового одноклассника в список\n2) Назад\n: ")) == "1":

               name = input("Введите имя: ")

               addres = input("Введите Адрес: ")

               phone = input("Введите номер телефона: ")

               hobby = input("Введите хобби")

               self.massiv[len(self.massiv)+1] = [name,addres,phone,hobby]

           else:

               print(self.massiv)

               Program.menu(self)

   def findFI(self):

       print("Введите 0, для возвращения в меню")

       findPhone = input("Введите номер телефона: ")

       if findPhone != 0:

           for i in self.massiv:

               if self.massiv[i][2] == findPhone:

                   print(self.massiv[i][0])

                   Program.menu(self)

       else:

           Program.menu(self)

       print("\nНе найдено\n")

       Program.menu(self)

   def findHobby(self):

       countHobby = 0

       membHobby = {0: 0}

       addmembHobby = []

       for i in self.massiv:

           for ii in membHobby:

               if self.massiv[i][3] != ii:

                   addmembHobby.append(self.massiv[i][3])

       for i in addmembHobby:  

           membHobby[i] = []

       del membHobby[0]

       for i in membHobby:

           for ii in self.massiv:

               if self.massiv[ii][3] == i:

                   membHobby[i].append(self.massiv[ii][0])

       

       print(membHobby)

       Program.menu(self)

           

a = Program()

a.menu()

   

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для создания программы, которая описывает массив структур телефонного справочника одноклассников и выполняет указанные функции, вы можете использовать язык программирования C++. Вот пример программы:

cpp
#include <iostream> #include <string> #include <vector> // Структура для хранения информации об однокласснике struct Classmate { std::string fullName; std::string address; std::string phoneNumber; std::string hobby; }; int main() { const int numClassmates = 10; std::vector<Classmate> classmates(numClassmates); // Ввод данных о одноклассниках for (int i = 0; i < numClassmates; ++i) { std::cout << "Введите информацию о " << i + 1 << "-м однокласснике:" << std::endl; std::cout << "ФИ: "; std::getline(std::cin, classmates[i].fullName); std::cout << "Адрес: "; std::getline(std::cin, classmates[i].address); std::cout << "Телефон: "; std::getline(std::cin, classmates[i].phoneNumber); std::cout << "Хобби: "; std::getline(std::cin, classmates[i].hobby); } // Поиск номеров телефона по ФИ std::cout << "Введите ФИ для поиска: "; std::string searchName; std::getline(std::cin, searchName); for (const auto& classmate : classmates) { if (classmate.fullName == searchName) { std::cout << "Номер телефона: " << classmate.phoneNumber << std::endl; } } // Подсчет и вывод списка одноклассников по хобби std::cout << "Введите хобби для поиска: "; std::string searchHobby; std::getline(std::cin, searchHobby); std::cout << "Список одноклассников с хобби '" << searchHobby << "':" << std::endl; for (const auto& classmate : classmates) { if (classmate.hobby == searchHobby) { std::cout << classmate.fullName << std::endl; } } return 0; }

Эта программа создает массив структур, позволяет ввести данные о 10 одноклассниках, а затем выполняет поиск номеров телефонов по ФИ и выводит список одноклассников по хобби.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос