Username77177

Dahl-Programming-Lab9-16

Dec 5th, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.17 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3.  
  4. using namespace std;
  5. int main()
  6. {
  7.     //! Задание 1
  8.     /*  Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом — все отрицательные
  9. (элементы, равные 0, считать положительными). */
  10.     srand(time(0)); // Сид
  11.     cout<<"Введите количество элементов: ";
  12.     int a;
  13.     cin >> a;
  14.     int *array = new int [a];
  15.     int temporary;
  16.     //? Заполнение
  17.     for (int i = 0; i < a; i++)
  18.     {
  19.         array[i] = rand()% 31 - 15;
  20.     }
  21.     //? Сортировка пузырьком (ну и название)
  22.     for (int i = 0; i < a - 1; i++)
  23.     {
  24.         for (int j = 0; j < a - 1 - i; j++)
  25.         {
  26.             if (array[j] > array[j+1])
  27.             {
  28.             temporary = array[j];
  29.             array[j] = array[j+1];
  30.             array[j+1] = temporary;
  31.             }
  32.         }
  33.     }
  34.     for (int i = 0; i < a; i++)
  35.     {
  36.         cout<<array[i]<< " ";
  37.     }
  38.     cout<<endl;
  39.     cout<<endl;
  40.     cout << "Задание 2" << endl;
  41.    
  42.     //! Задание 2
  43.  /*В матрице Y(5×5) определите минимальный элемент.
  44.     Упорядочить столбец по убыванию, если он пересекается с минимальным элементом. */
  45.    
  46.     int matrice[5][5], minimal, index_column; //Массив, минимум, индекс строки
  47.     //Заполнение и поиск
  48.     for (int i = 0; i < 5; i++)
  49.     {
  50.         for (int j = 0; j < 5; j++)
  51.         {
  52.             matrice[i][j] = rand()  % 21 - 10; // [-10;10]
  53.             cout<< matrice[i][j]<< " ";
  54.         }
  55.         cout << endl;
  56.     }
  57.    
  58.     minimal = matrice[0][0]; // Для определенности, пусть сначала минимумом будет первый элементов
  59.     int columnminimal[5];// Столбец с минимальным значением
  60.     for (int i = 0; i<5; i++)
  61.     {
  62.        for (int j = 0; j < 5; j++)
  63.        {
  64.            if (matrice[i][j] < minimal)
  65.            {
  66.                minimal = matrice[i][j];
  67.                index_column = j;
  68.            }
  69.        }
  70.     }
  71.     cout<< "Неупорядоченный список: "<<endl;
  72.     for (int i = 0; i<5; i++)
  73.     {
  74.         columnminimal[i] = matrice[i][index_column];
  75.         cout<<columnminimal[i]<< " ";
  76.     }
  77.    
  78.     cout<<endl;
  79.    
  80.     //! Сортировка пузырьком (всё ещё она)
  81.     for (int j = 0; j < 5; j++)
  82.     {
  83.         for (int i = 0; i < 5 - j; i++)
  84.         {
  85.             if (columnminimal[i] > columnminimal[i+1])
  86.             {
  87.                 temporary = columnminimal[i];
  88.                 columnminimal[i] = columnminimal[i+1];
  89.                 columnminimal[i+1] = temporary;
  90.             }
  91.         }
  92.     }
  93.    
  94.     // Вывод
  95.     cout << "Сортировка столбца: " << endl;
  96.     for (int i = 0; i<5; i++)
  97.     {
  98.     cout<< columnminimal[i] << " ";
  99.     }
  100.    
  101.     cout << endl;
  102.     return 0;
Add Comment
Please, Sign In to add comment