Advertisement
Lavig

Лабораторна робота №10 (Завдання 2)

Nov 8th, 2024 (edited)
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.06 KB | None | 0 0
  1. #include <iostream>
  2. #include <windows.h>
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.     SetConsoleOutputCP(1251);
  8.     auto const n{ 14 }, middle{ n / 2 };
  9.     int i{}, swap_count{};
  10.     double x[n]{}, local_var{};
  11.     for (i = 0; i < n; i++) {
  12.         while (true) {
  13.             cout << "x[" << i << "] = ";
  14.             cin >> x[i];
  15.             if (cin.fail() || cin.peek() != '\n') {
  16.                 cin.clear();
  17.                 cin.ignore(32767, '\n');
  18.                 cout << "Число було введено неправильно. Спробуйте ще раз!" << endl;
  19.                 continue;
  20.             }
  21.             else {
  22.                 break;
  23.             }
  24.         }
  25.     }
  26.     cout << "Вихідний масив:" << endl;
  27.     for (i = 0; i < n; i++) {
  28.         cout << x[i];
  29.         if (i < n - 1) {
  30.             cout << ", ";
  31.         }
  32.     }
  33.     for (i = 0; i < middle; i++) {
  34.         local_var = x[i];
  35.         x[i] = x[middle + i];
  36.         x[middle + i] = local_var;
  37.         swap_count += 1;
  38.     }
  39.     cout << endl << "Новий масив:" << endl;
  40.     for (i = 0; i < n; i++) {
  41.         cout << x[i];
  42.         if (i < n - 1) {
  43.             cout << ", ";
  44.         }
  45.     }
  46.     cout << endl << "Кількість зроблених перестановок - " << swap_count;
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement