Вопрос задан 05.07.2023 в 03:42. Предмет Информатика. Спрашивает Идрисова Карина'.

А как написать решение этой задачи на с++ задача: напишите программу выводящих на экран список всех

программистов и дополнительный список программистов на С++ решить нужно через записи ,
0 0
Перейти к ответам

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

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

Приложение принимает на ввод информацию о Именах и Фамилиях программистов, а также используемом языке и позволяет найти среди записей информацию о программистах C++.

Иллюстрации кода и тестовых ввода-вывода прикреплены во вложениях.

=======================

Ваши оценки и отзывы позволяют лучше оценить решение.

Если ответ удовлетворил, отметь его как "Лучший".

Успехов в учёбе!

=======================

Код:

#include <iostream>

#include <string>

#include <utility>

#include <vector>

#include <exception>

struct Coder {

   std::string name;

   std::string lastname;

   std::string language;

   Coder(std::string name, std::string lastname, std::string language) :

       name(std::move(name)),

       lastname(std::move(lastname)),

       language(std::move(language))

   { }

   explicit operator std::string() const

   {

       return name + " " + lastname + " " + language;

   }

};

struct DataBase {

private:

   std::vector<Coder> _base;

public:

   bool add_coder(Coder coder) {

       _base.push_back(std::move(coder));

       return true;

   }

   std::vector<Coder> search_by_language(const std::string& language_name) {

       std::vector<Coder> search_results;

       for(auto & coder : _base) {

           if (coder.language == language_name) {

               search_results.push_back(std::move(coder));

           }

       }

       return search_results;

   }

};

int main() {

   DataBase base;

   std::cout << "Please enter information about programmers like this \"Bjarne Stroustrup C++\" bellow" << std::endl;

   std::cout << "You can type .find command for finding all added programmers who have developed with C++" << std::endl;

   std::string input, name, lastname, language;

   while(true) {

       std::cout << "> ";

       std::cin >> input;

       if(input == ".find") break;

       name = input;

       std::cin >> lastname >> language;

       base.add_coder(Coder(input, lastname, language));

   }

   std::vector<Coder> search_results = base.search_by_language("C++");

   for(auto & search_result : search_results){

       std::cout << (std::string)search_result << std::endl;

   }

   return 0;

}

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

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

cpp
#include <iostream> #include <string> #include <vector> // Определение структуры для программиста struct Programmer { std::string name; int age; }; int main() { // Создание списков программистов std::vector<Programmer> allProgrammers; std::vector<Programmer> cppProgrammers; // Заполнение списков данными allProgrammers.push_back({"Alice", 28}); allProgrammers.push_back({"Bob", 30}); allProgrammers.push_back({"Charlie", 25}); allProgrammers.push_back({"David", 22}); allProgrammers.push_back({"Eve", 26}); cppProgrammers.push_back({"Bob", 30}); cppProgrammers.push_back({"David", 22}); // Вывод списка всех программистов std::cout << "Список всех программистов:" << std::endl; for (const Programmer& programmer : allProgrammers) { std::cout << "Имя: " << programmer.name << ", Возраст: " << programmer.age << std::endl; } // Вывод списка программистов на C++ std::cout << "\nСписок программистов на C++:" << std::endl; for (const Programmer& programmer : cppProgrammers) { std::cout << "Имя: " << programmer.name << ", Возраст: " << programmer.age << std::endl; } return 0; }

В этом примере мы используем структуру Programmer, которая содержит поля для имени и возраста программиста. Мы создаем два списка: allProgrammers для всех программистов и cppProgrammers для программистов на C++. Затем мы заполняем списки данными и выводим их на экран.

0 0

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

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

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

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