Предмет:
ИнформатикаАвтор:
jessegonzalesПриведенный ниже код на C++ демонстрирует решение задачи с использованием структуры данных. Он запрашивает у пользователя информацию о людях, используя структуру Person, сохраняет данные в массив и выводит таблицу всех людей. Затем программа находит максимальную и минимальную заработную плату среди мужчин и женщин и выводит разницу.
Объяснение:
#include <iostream>
#include <string>
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;
cout << "Фамилия\tГод рождения\tАдрес\tПол\tЗанятость\tДети\tЗамужем\tЗаработная плата" << endl;
for (int i = 0; i < numPeople; i++) {
cout
Автор:
goonlrp7Добавить свой ответ
Предмет:
ГеометрияАвтор:
jazlynow2iОтветов:
Смотреть
Предмет:
Английский языкАвтор:
rivasОтветов:
Смотреть