Форум программистов, компьютерный форум CyberForum.ru

перевод кода с паскаля на С++ (Сортировка матрицы по возрастанию) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ в чем ошибка? Задача на "положение улитки" http://www.cyberforum.ru/cpp-beginners/thread819426.html
помогите пожалуйста! в чем ошибка в даном коде? Каждый солнечный день улитка, сидящая на дереве, поднимается вверх на 2 см, а в каждый пасмурный день опускается вниз на 1 см. В начале наблюдения улитка находится на А см от земли на В-метровом дереве. Есть 30-элементный массив, содержащий сведения о том, каким был соответствующий день наблюдения - солнечным или пасмурным. Написать программу,...
C++ Как получить битовую маску вида 100.000 Как получить битовую маску вида 100...000? первая 1, все остальные нули. ПРобовал так, но почему-то не работает: DWORD mask = ~((~0) >> 1); http://www.cyberforum.ru/cpp-beginners/thread819384.html
C++ Обратная матрица
Дана разреженная матрица общего вида. Найти матрицу, обратную к ней... Нужно написать функцию которая вычисляет обратную матрицу, при этом принимает два значения(массив и размерность)....
C++ Выбор функции при нажатии определённой клавиши
Итак, хочу написать код, который бы находил производную функции. Нужно только лишь для 4 функций. Для пользователя выводятся все эти функции под нумерацией. Помогите сделать так, чтобы при нажатии, например, "1", программа работала лишь с той функцией, которая задана этой цифрой. Не нужно писать: иди учи, в интернете ищи и т.д. и т.п., потому что увлекаюсь программированием чисто в познавательных...
C++ Переделать код С++ (Определить принадлежность области точки) http://www.cyberforum.ru/cpp-beginners/thread819370.html
Составить логический выражение для описания сложных областей точек в системе координат XY. Определить принадлежность этой области точки, координаты которой вводятся с клавиатуры. Код: #include <iostream> using namespace std; int main() { setlocale(0, "Russian"); double num;
 

Показать сообщение отдельно
Alechi
0 / 0 / 0
Регистрация: 26.03.2013
Сообщений: 3
26.03.2013, 20:57     перевод кода с паскаля на С++ (Сортировка матрицы по возрастанию)
Здравствуйте, помогите пожалуйста перевести код с паскаля в с++.
Сортировка матрицы по возрастанию

Задан двухмерный массив A(a_ij), де i=1,2…n , j=1,2…m, элементами которого являются целые числа. Упорядочить информацию в массиве в порядке возрастания.

Указания:
Изначальный массив задать самостоятельно.
На экран вывести начальный и полученный массивы.
Вот код:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
 uses crt;
 
 var a:array[1..50,1..50] of integer;{матрица}
 
 m,n,i,j,k,tmp:integer; {размеры матрицы,счетчики циклов, буфер для обмена}
 
 begin
 
 clrscr;
 
 randomize;
 
 writeln('Введите размеры матрицы:');
 
 write(' Количество строк m=');
 
 repeat
 
 readln(m);
 
 until m in [1..50];
 
 write(' Количество столбцов n=');
 
 repeat
 
 readln(n);
 
 until n in [1..50];
 
 writeln;
 
 writeln('Исходная матрица:');
 
 for i:=1 to m do
 
 begin
 
 for j:=1 to n do
 
 begin
 
 a[i,j]:=random(100);{заполним матрицу случайными числами в инт[0,99]}
 
 write(a[i,j]:4);
 
 end;
 
 writeln;
 
 end;
 
 writeln;
 
 {сортировка матрицы пузырьком}
 
 for k:=1 to n*m do {повторяем сколько элементов в матрице}
 
 for i:=1 to m do
 
 for j:=1 to n do
 
 begin
 
 if j<>n then {если элемент в строке не последний}
 
 begin
 
 if a[i,j+1]<a[i,j] then
 
 begin
 
 tmp:=a[i,j+1];
 
 a[i,j+1]:=a[i,j];
 
 a[i,j]:=tmp;{обмен элементов}
 
 end;
 
 end
 
 else
 
 if (a[i+1,1]<a[i,j])and(i<>m)then {если строка не последняя}
 
 {меняем первый элемент в следущей строке с последним элементом в текущей строке}
 
 begin
 
 tmp:=a[i+1,1];
 
 a[i+1,1]:=a[i,j];
 
 a[i,j]:=tmp;
 
 end;
 
 end;
 
 writeln('Отсортированная матрица:');
 
 for i:=1 to m do
 
 begin
 
 for j:=1 to n do
 
 write(a[i,j]:4);
 
 writeln;
 
 end;
 
 readln
 
 end.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru