Advertisement
Lavig

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

Jan 30th, 2025
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.11 KB | None | 0 0
  1. #include <iostream>
  2. #include <windows.h>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.     SetConsoleOutputCP(1251);
  9.     int N{}, i{}, min_positive{ INT_MAX }, even_sum{ 1 };
  10.     string words_array[10]{ "перший", "другий", "третій", "четвертий", "п'ятий", "шостий", "сьомий", "восьмий", "дев'ятий", "десятий" };
  11.     while (true) {
  12.         cout << "Введіть бажану кількість елементів у масиві (від 2 до 10): ";
  13.         cin >> N;
  14.         if (cin.fail() || cin.peek() != '\n' || N < 2 || N > 10) {
  15.             cin.clear();
  16.             cin.ignore(32767, '\n');
  17.             cout << "Число було введено неправильно. Спробуйте ще раз!" << endl;
  18.             continue;
  19.         }
  20.         else {
  21.             break;
  22.         }
  23.     }
  24.     int* array = new int[N];
  25.     for (i = 0; i < N; i++) {
  26.         while (true) {
  27.             cout << "Введіть " << words_array[i] << " елемент масиву (ціле число): ";
  28.             cin >> *(array + i);
  29.             if (cin.fail() || cin.peek() != '\n') {
  30.                 cin.clear();
  31.                 cin.ignore(32767, '\n');
  32.                 cout << "Число було введено неправильно. Спробуйте ще раз!" << endl;
  33.                 continue;
  34.             }
  35.             else {
  36.                 break;
  37.             }
  38.         }
  39.     }
  40.     cout << "Введений масив: ";
  41.     for (i = 0; i < N; i++) {
  42.         cout << *(array + i) << " ";
  43.         if (*(array + i) < min_positive && *(array + i) > 0) {
  44.             min_positive = *(array + i);
  45.         }
  46.         if (*(array + i) % 2 == 0) {
  47.             even_sum += *(array + i);
  48.         }
  49.     }
  50.     cout << endl;
  51.     if (min_positive == INT_MAX) {
  52.         cout << "У масиві немає позитивних елементів" << endl;
  53.     }
  54.     else {
  55.         cout << "Найменший позитивний елемент масиву: " << min_positive << endl;
  56.     }
  57.     if (even_sum == 1) {
  58.             cout << "У масиві немає парних елементів" << endl;
  59.     }
  60.     else {
  61.         cout << "Сума парних елементів масиву: " << even_sum - 1 << endl;
  62.     }
  63.     cout << "Масив у зворотному порядку: ";
  64.     for (i = N - 1; i >= 0; i--) {
  65.         cout << *(array + i) << " ";
  66.     }
  67.     delete[] array;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement