• Задан массив данных следующей структуры: Фамилия; Год рождения; Адрес; Мужчина: 1) военный; 2) заработная плата Женщина: 1) количество детей, 2) замужем или нет, 3) заработная плата. Составить программу с использованием структуры данных, которая обеспечивает ввод полученной информации, вывод ее в виде таблицы и обнаружение разницы между максимальной и минимальной заработной платой мужчин и женщин.В С++ Как вывести(сделать) таблицу, которая будет нормально выглядеть из этого кода!!!!!!! #include #include #include using namespace std; // Структура данных для человека struct Person { string name; int birthYear; string address; bool isMale; bool isMilitary; // только для мужчин int numChildren; // только для женщин bool isMarried; // только для женщин double salary; // только для мужчин и женщин }; int main() { const int MAX_PEOPLE = 100; // максимальное количество людей в базе данных Person people[MAX_PEOPLE]; // массив для хранения информации о людях int numPeople = 0; // текущее количество людей в базе данных // Запрос информации о каждом человеке у пользователя while (numPeople < MAX_PEOPLE) { cout << "Введите информацию о человеке #" << numPeople + 1 << endl; // Общая информация о человеке cout << "Фамилия: "; cin >> people[numPeople].name; cout << "Год рождения: "; cin >> people[numPeople].birthYear; cout << "Адрес: "; cin >> people[numPeople].address; // Информация о поле и занятости char gender; cout << "Пол (M/F): "; cin >> gender; people[numPeople].isMale = (gender == 'M'); if (people[numPeople].isMale) { cout << "Военный? (0/1): "; cin >> people[numPeople].isMilitary; } else { cout << "Количество детей: "; cin >> people[numPeople].numChildren; cout << "Замужем? (0/1): "; cin >> people[numPeople].isMarried; } // Информация о заработной плате cout << "Заработная плата: "; cin >> people[numPeople].salary; // Запрос на продолжение ввода информации char response; cout << "Добавить еще человека? (Y/N): "; cin >> response; if (response != 'Y' && response != 'y') { break; } numPeople++; } // Вывод таблицы с информацией о каждом человеке cout << "Список людей:" << endl; for (int i = 0; i < numPeople; i++) cout<< i+1<<" Фамилия"< maxMaleSalary) { maxMaleSalary = people[i].salary; } if (people[i].salary < minMaleSalary) { minMaleSalary = people[i].salary; } } else { if (people[i].salary > maxFemaleSalary) { maxFemaleSalary = people[i].salary; } if (people[i].salary < minFemaleSalary) { minFemaleSalary = people[i].salary; } } } // Вычисление разницы между максимальной и минимальной заработной платой мужчин и женщин double diff = maxMaleSalary - minMaleSalary - (maxFemaleSalary - minFemaleSalary); cout << "Разница между максимальной и минимальной заработной платой мужчин и женщин: " << diff << endl; }

Ответы 1

  • // Запрос информации о каждом человеке у пользователя

    while (numPeople < MAX_PEOPLE) {

       cout << "Введите информацию о человеке #" << numPeople + 1 << endl;

       

       // Общая информация о человеке

       cout << "Фамилия: ";

       cin >> people[numPeople].name;

       cout << "Год рождения: ";

       cin >> people[numPeople].birthYear;

       cout << "Адрес: ";

       cin >> people[numPeople].address;

       

       // Информация о поле и занятости

       char gender;

       cout << "Пол (M/F): ";

       cin >> gender;

       people[numPeople].isMale = (gender == 'M');

       if (people[numPeople].isMale) {

           cout << "Военный? (0/1): ";

           cin >> people[numPeople].isMilitary;

       } else {

           cout << "Количество детей: ";

           cin >> people[numPeople].numChildren;

           cout << "Замужем? (0/1): ";

           cin >> people[numPeople].isMarried;

       }

       

       // Информация о заработной плате

       cout << "Заработная плата: ";

       cin >> people[numPeople].salary;

       

       // Запрос на продолжение ввода информации

       char response;

       cout << "Добавить еще человека? (Y/N): ";

       cin >> response;

       if (response != 'Y' && response != 'y') {

           break;

       }

       numPeople++;

    }

    // Вывод таблицы с информацией о каждом человеке

    cout << "Список людей:" << endl;

    cout << "№\tФамилия\tГод рождения\tАдрес\t\tПол\tСтатус\tДети\tЗП" << endl;

    for (int i = 0; i < numPeople; i++) {

       cout << i+1 << "\t";

       cout << people[i].name << "\t";

       cout << people[i].birthYear << "\t\t";

       cout << people[i].address << "\t";

       if (people[i].isMale) {

           cout << "Муж\t";

           if (people[i].isMilitary) {

               cout << "Воен\t";

           } else {

               cout << "Граж\t

    • Автор:

      chainoayr
    • 1 год назад
    • 3
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years