• Предмет: Информатика
  • Автор: blackzenya
  • Вопрос задан 3 месяца назад

Структури c++
1. Описати структуру з ім'ям PIDPR, що містить такі поля:

• назва підприємства;

• кількість співробітників;

• дата заснування(масив з трьох чисел).

2. Написати програму, що виконує наступні дії:

• введення з клавіатури даних в масив, що складається з восьми елементів

типу NOTE; записи повинні бути впорядковані по назві підприємства;

• виведення на екран інформації про підприємства, чиї дати заснування

припадають на місяць, значення якого введено з клавіатури;

• якщо таких немає, видати на дисплей відповідне повідомлення.

Ответы

Ответ дал: m24500311
1

Ответ:

Звучить як цікаве завдання! Ось приклад, як ви можете створити структуру PIDPR у мові C++ і написати програму для виконання описаних дій:

```cpp

#include <iostream>

#include <string>

const int SIZE = 8;

struct PIDPR {

std::string companyName;

int employeesCount;

int foundationDate[3];

};

void inputPIDPR(PIDPR &pidpr) {

std::cout << "Введіть назву підприємства: ";

std::cin >> pidpr.companyName;

std::cout << "Введіть кількість співробітників: ";

std::cin >> pidpr.employeesCount;

std::cout << "Введіть дату заснування (день, місяць, рік): ";

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

std::cin >> pidpr.foundationDate[i];

}

}

void sortPIDPR(PIDPR pidprArr[], int size) {

for (int i = 0; i < size - 1; i++) {

for (int j = 0; j < size - i - 1; j++) {

if (pidprArr[j].companyName > pidprArr[j + 1].companyName) {

PIDPR temp = pidprArr[j];

pidprArr[j] = pidprArr[j + 1];

pidprArr[j + 1] = temp;

}

}

}

}

void printByMonth(PIDPR pidprArr[], int size, int month) {

bool found = false;

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

if (pidprArr[i].foundationDate[1] == month) {

std::cout << "Назва підприємства: " << pidprArr[i].companyName << std::endl;

std::cout << "Кількість співробітників: " << pidprArr[i].employeesCount << std::endl;

std::cout << "Дата заснування: " << pidprArr[i].foundationDate[0] << "."

<< pidprArr[i].foundationDate[1] << "."

<< pidprArr[i].foundationDate[2] << std::endl;

std::cout << "---------------------" << std::endl;

found = true;

}

}

if (!found) {

std::cout << "Підприємства, засновані в цьому місяці, відсутні." << std::endl;

}

}

int main() {

PIDPR pidprArr[SIZE];

std::cout << "Введіть дані про " << SIZE << " підприємств:" << std::endl;

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

std::cout << "Підприємство #" << i + 1 << std::endl;

inputPIDPR(pidprArr[i]);

std::cout << "---------------------" << std::endl;

}

sortPIDPR(pidprArr, SIZE);

int month;

std::cout << "Введіть номер місяця: ";

std::cin >> month;

std::cout << "Підприємства, засновані в цьому місяці:" << std::endl;

printByMonth(pidprArr, SIZE, month);

return 0;

}

```

Цей код дозволяє ввести дані про 8 підприємств, впорядкувати їх за назвою та вивести інформацію про підприємства, засновані в певному місяці, який вводить користувач.

Вас заинтересует