Предмет: Информатика, автор: RedBoyrus

В работе память для массива должна выделяться динамически. На экран выводить исходные данные и результат.
Дана матрица размером NxM. Упорядочить ее строки по возрастанию их первых элементов.
Задание на C++


Hn94: как это "по возрастанию их первых элементов"?
RedBoyrus: 1 2 3
4 5 6
7 8 9
1 4 7
2 5 8
3 6 9
RedBoyrus: или так или так, лучше два варианта события, только сейчас увидел

Ответы

Автор ответа: Hn94
1

Ответ:

#include <iostream>

#include <ctime>

using namespace std;

int main()

{

srand(time(NULL));

int rows, cols;

cout << "Rows: ";

cin >> rows;

cout << "Cols: ";

cin >> cols;

cout << endl;

int** arr = new int* [rows];

for (int i = 0; i < rows; i++)

{

 arr[i] = new int[cols];

}

for (int i = 0; i < rows; i++)

{

 for (int j = 0; j < cols; j++)

 {

  arr[i][j] = rand() % 100;

  cout.width(3);

  cout << arr[i][j];

 }

 cout << endl;

}

for (int i = 0; i < rows; i++)

{

 for (int j = 0; j < cols; j++)

 {

  for (int k = cols - 1; k >= 0; k--)

  {

   if (arr[i][k - 1] > arr[i][k])

   {

    int temp = arr[i][k - 1];

    arr[i][k - 1] = arr[i][k];

    arr[i][k] = temp;

   }

  }

 }

}

cout << endl;

for (int i = 0; i < rows; i++)

{

 for (int j = 0; j < cols; j++)

 {

  cout.width(3);

  cout << arr[i][j];

 }

 cout << endl;

}

for (int i = 0; i < rows; i++)

{

 delete[] arr[i];

}

delete[] arr;

}

Объяснение:


RedBoyrus: спасибо большое!)
Похожие вопросы
Предмет: Английский язык, автор: 123456789298