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

Написать программу «успеваемость». Пользователь вводит 10 оценок студента.
Реализовать меню для пользователя:
■ Вывод оценок (вывод содержимого массива);
■ Пересдача экзамена (пользователь вводит номер элемента массива и новую оценку);
■ Выходит ли стипендия (стипендия выходит, если средний бал не ниже 10.7).
Написать код на языке С++(СОРТИРОВКА МАССИВА)

Ответы

Ответ дал: щшгщшг
1

Відповідь:

#include <iostream>

#include <algorithm> // библиотека для сортировки массива

using namespace std;

const int N = 10; // константа для размера массива

int main() {

   int marks[N]; // объявление массива оценок

   double sum = 0; // переменная для хранения суммы оценок

   int choice; // переменная для хранения выбора пользователя

   // ввод оценок

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

       cout << "Введите оценку #" << i + 1 << ": ";

       cin >> marks[i];

       sum += marks[i]; // добавляем оценку к сумме

   }

   // меню

   while (true) {

       cout << endl << "Меню:" << endl;

       cout << "1. Вывести оценки" << endl;

       cout << "2. Пересдача экзамена" << endl;

       cout << "3. Проверить стипендию" << endl;

       cout << "4. Выход" << endl;

       cout << "Выберите действие: ";

       cin >> choice;

       switch (choice) {

           case 1: // вывод оценок

               cout << "Оценки студента: ";

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

                   cout << marks[i] << " ";

               }

               cout << endl;

               break;

           case 2: // пересдача экзамена

               int index, new_mark;

               cout << "Введите номер оценки, которую нужно изменить (от 1 до " << N << "): ";

               cin >> index;

               cout << "Введите новую оценку: ";

               cin >> new_mark;

               marks[index - 1] = new_mark;

               sum += new_mark - marks[index - 1]; // корректируем сумму

               break;

           case 3: // проверка стипендии

               double avg_mark = sum / N;

               cout << "Средний балл студента: " << avg_mark << endl;

               if (avg_mark >= 10.7) {

                   cout << "Студент получает стипендию!" << endl;

               } else {

                   cout << "Студент не получает стипендию." << endl;

               }

               break;

           case 4: // выход из программы

               return 0;

           default: // обработка некорректного выбора

               cout << "Ошибка: некорректный выбор. Попробуйте еще раз." << endl;

       }

   }

}

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