Maestro1

ЛР3.2.1

Jan 4th, 2024
800
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.78 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.     int n, min_even, min_even_index, count_even, x;
  8.  
  9.     cout << "Введите количество элементов массива: ";
  10.     cin >> n;
  11.  
  12.     int M[n];
  13.  
  14.     count_even = 0;
  15.  
  16.     for (int i = 0; i < n; i++)
  17.     {
  18.         cout << "Введите элемент массива M: ";
  19.         cin >> M[i];
  20.         if (M[i] % 2 == 0)
  21.         {
  22.             count_even += 1;
  23.         }
  24.     }
  25.  
  26.     if (count_even == 0)
  27.     {
  28.         cout << "Программа завершена из-за отсутствия чётных элементов в массиве M!" << endl;
  29.     }
  30.     else
  31.     {
  32.         /* """Передал именно это значение тк это максимальное значение которое принимает тип int""" */
  33.         min_even = 2147483647;
  34.         for (int i = 0; i < n; i++)
  35.         {
  36.             if (M[i] < min_even && M[i] % 2 == 0)
  37.             {
  38.                 min_even_index = i;
  39.                 min_even = M[i];
  40.             }
  41.         }
  42.     }
  43.  
  44.     cout << "Выведем массив М до сортировки: " << endl;
  45.  
  46.     for (int i = 0; i < n; i++)
  47.     {
  48.         cout << M[i] << " ";
  49.     }
  50.  
  51.     for (int i = min_even_index+1; i < n - 1; i++)
  52.     {
  53.         int min_j = i;
  54.         for (int j = i + 1; j < n; j++)
  55.         {
  56.             if (M[j] > M[min_j])
  57.             {
  58.                 min_j = j;
  59.             }
  60.         }
  61.  
  62.         x = M[i];
  63.         M[i] = M[min_j];
  64.         M[min_j] = x;
  65.     }
  66.  
  67.     cout << endl;
  68.     cout << "Выведем массив М после сортировки: " << endl;
  69.  
  70.     for (int i = 0; i < n; i++)
  71.     {
  72.         cout << M[i] << " ";
  73.     }
  74.  
  75.     cout << endl;
  76.  
  77.     return 0;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment