Advertisement
Lavig

Другий семестр. Лабораторна робота №20 (Завдання 2)

Jun 4th, 2025
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.98 KB | None | 0 0
  1. #include <iostream>
  2. #include <windows.h>
  3. #include <stdexcept>
  4.  
  5. using namespace std;
  6.  
  7. double calculateAverage(double arr[], int size) {
  8.     double sum{};
  9.     int i{};
  10.     if (size == 0) {
  11.         throw runtime_error("Неможливо обчислити середнє арифметичне в порожньому масиві");
  12.     }
  13.     for (i = 0; i < size; i++) {
  14.         sum += arr[i];
  15.     }
  16.     return sum / size;
  17. }
  18.  
  19. int main() {
  20.     SetConsoleCP(1251);
  21.     SetConsoleOutputCP(1251);
  22.     int N{}, i{};
  23.     double array[10]{}, avg{};
  24.     string words_array[10]{ "перший", "другий","третій", "четвертий", "п'ятий", "шостий", "сьомий", "восьмий", "дев'ятий", "десятий" };
  25.     while (true) {
  26.         cout << "Введіть бажану кількість елементів у масиві (від 2 до 10): ";
  27.         cin >> N;
  28.         if (cin.fail() || N < 2 || N > 10) {
  29.             cin.clear();
  30.             cin.ignore(32767, '\n');
  31.             cout << "Число було введено неправильно. Спробуйте ще раз!" << endl;
  32.             continue;
  33.         }
  34.         else {
  35.             break;
  36.         }
  37.     }
  38.     for (i = 0; i < N; i++) {
  39.         while (true) {
  40.             cout << "Введіть " << words_array[i] << " елемент масиву: ";
  41.             cin >> array[i];
  42.             if (cin.fail()) {
  43.                 cin.clear();
  44.                 cin.ignore(32767, '\n');
  45.                 cout << "Число було введено неправильно. Спробуйте ще раз!" << endl;
  46.                 continue;
  47.             }
  48.             else {
  49.                 break;
  50.             }
  51.         }
  52.     }
  53.     try {
  54.         avg = calculateAverage(array, N);
  55.         cout << "Середнє значення: " << avg << endl;
  56.     }
  57.     catch (const runtime_error& e) {
  58.         cout << "Виникла помилка: " << e.what() << endl;
  59.     }
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement