Создать двумерный массив элементы, которого нужно будет построчно отсортировать в порядке возрастания.Массив сделать 3*3,элементы сделать рандомными.
Написать на языке C++.
Нашел похожий код и переделал его под сою задачу.Можете проверить?
#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
int main()
{
setlocale(0, "");//чтоб консоль писала по русски
srand(time(NULL));
const int str = 3;
const int stolb = 3;
int mass[str][stolb];
int i, j, a, c, e = 1, d = 100, temp, x, z;
//заполняем двухмерный массив и выводим на экран
//______________________________________________________________________________
cout << "До сортировки""\n\n";
for (i = 0;i < str;i++)
{
for (j = 0;j < stolb;j++)
{
a = rand() % (d - e) + e;
mass[i][j] = a;
cout << mass[i][j] << "\t";
}
cout << "\n\n\n\n";
}
cout << "\n\n";
//Сортируем массив
//_______________________________________________________________________________
for (c = 0;c <= (str * stolb);c++)//колличество проходов
{
//в строках упорядочиваем
//____________________________________________
for (i = 0;i < str;i++)
{
for (j = 0;j < stolb - 1;j++)
{
if (mass[i][j] > mass[i][j + 1])
{
temp = mass[i][j];
mass[i][j] = mass[i][j + 1];
mass[i][j + 1] = temp;
}
}
}
//в столбах упорядочиваем
//_____________________________________________
for (x = 0;x < stolb;x++)
{
for (z = 0;z < str - 1;z++)
{
if (mass[z][x] > mass[z][x + 1])
{
temp = mass[z][x];
mass[z][x] = mass[z][x + 1];
mass[z][x + 1] = temp;
}
}
}
}
//вывод на экран после сортировки
//__________________________________________________________
cout << "После сортировки по возрастанию""\n\n\n\n";
for (i = 0;i < str;i++)
{
for (j = 0;j < stolb;j++)
{
cout << mass[i][j] << "\t";
}
cout << "\n\n\n\n";
}
system("pause");
}
Так а чего тут мочь, запустить и проверить выдает ли то, что нужно )
str
звучит как string
.
Лучше что-нибудь типа rowCount
, columnCount
.
И хотя бы вывод массива я бы вынес в функцию, пример.
Тогда убрать вывод из первого цикла и в конце программы и просто вызвать функцию после заполнения и в конце.
мне просто лень переделывать))
до этого программа выводила массив 5*5
,а я ее переделал под 3*
3,сделав в двух строчках манипуляцию поставив значения “3”.Ничего лишнего из этой проги удалять не нужно?Ото завтра ее сдавать надо будет.Просто боюсь есть в этой проге лишние значения и лишнии строки вдруг есть
Дык если ничего не делать, то и научиться программировать не получится )
А товарищам, которые разбираются в плюсах, не лень чужую работу работать?
всегда напрягала формулировка
Ну как сортировать: по сумме елементов каждой строки и тогда строки менять или по возрастанию значений в отдельной строке массива?
Каким должен быть ответ для такого набора данных?
3 1 2
6 0 0
-7 1 6
лодырю и помогать лень ))
я без понятия,препод дал задание)
-7 0 0
1 1 2
3 6 6
я думаю так