даю 100 балів за задачу!
допоможіть
Прога С++

Ответы
Ответ:
#include <iostream>
using namespace std;
int main()
{
// Создаем двумерный массив по количеству студентов и курсов и заполняем его значениями с клавиатуры
int students[5][6];
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 6; j++) {
cout << "Введите количество человек на курсе " << i + 1 << " в группе " << j + 1 << ": ";
cin >> students[i][j];
cout << endl;
}
}
cout << endl << endl;
// Выводим таблицу с количеством студентов (для удобства)
cout << "Таблица с количеством студентов: " << endl;
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 6; j++) {
cout << students[i][j] << " ";
}
cout << endl;
}
cout << endl << endl;
// ЗАДАНИЕ (А)
// Ищем курс, на котором минимальное число студентов
int course[5]; // массив, где будем хранить сумму студентов на каждом курсе; размер - количество курсов (5)
int sum = 0; // вспомогательная переменная, где будем хранить текущую сумму на каждом этапе
// Ищем общее количество студентов (сумму) на каждом курсе
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 6; j++) {
sum += students[i][j];
}
course[i] = sum;
sum = 0;
}
// Ищем минимальное значение и номер его ячейки в этом массиве
int mn_c = course[0]; // минимальное значение
int mn_i = 0; // номер его ячейки
for (int i = 1; i < 5; i++) {
if (course[i] < mn_c) {
mn_c = course[i];
mn_i = i;
}
}
// Выводим номер курса
cout << "Минимальное число студентов учится на курсе " << mn_i + 1 << endl << endl;
// ЗАДАНИЕ (Б)
// Ищем группу с минимальным числом студентов и ее курс и номер
int mn_i1 = 0; // номер курса с минимальным числом студентов
int mn_j1 = 0; // номер группы с минимальным числом студентов
int mn_s = students[0][0]; // минимальное число студентов
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 6; j++) {
if (students[i][j] < mn_s) {
mn_s = students[i][j];
mn_i1 = i;
mn_j1 = j;
}
}
}
// Выводим номер курса и номер группы
cout << "Минимальное число студентов в группе оказалось на курсе " << mn_i1 + 1 << " в группе" << mn_j1 + 1 << endl << endl;
// ЗАДАНИЕ (В)
// Ищем номер группы с минимальным числом студентов для каждого курса
int mn_studs[5];// массив из 5 ячеек (число курсов); в каждой ячейке хранится номер группы c наименьшим числом студентов
for (int i = 0; i < 5; i++) {
int mn_s = students[i][0]; // минимальное число студентов
int mn_j2 = 0; // номер группы с минимальным числом студентов
for (int j = 0; j < 6; j++) {
if (students[i][j] < mn_s) {
mn_s = students[i][j];
mn_j2 = j;
}
}
mn_studs[i] = mn_j2;
}
// Выводим получившиеся значения
for (int i = 0; i < 5; i++) {
cout << "Минимальное число студентов на курсе " << i + 1 << "учится в группе " << mn_studs[i] + 1 << endl;
}
}
Объяснение:
Будем хранить количество студентов в двумерном массиве. Номер строки (i) отвечает за номер курса, а номер столбца (j) - за номер группы.
Далее: см. комментарии и объяснение во вложении.
#SPJ1


