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

перевод из Паскаля в С++ - C++

Восстановить пароль Регистрация
 
большесолнца
0 / 0 / 0
Регистрация: 29.06.2013
Сообщений: 4
25.01.2014, 13:10     перевод из Паскаля в С++ #1
Друзья, доброго времени суток. Проблема такая: есть код, написанный в паскле, его нужно перевести в с++.
своими силами я не в состоянии этого сделать.

Если что не понятно, то само задание: Задан двумерный массив NxM. Нужно написать код, который в исходном массиве найдет подмассив размером 3х3 с максимальной суммой элементов и транспонирует его в исходном массиве.N и M могут быть не кратны 3.. Исходная матрица:{1, 3, -2, 11},{7, 10, 2, 6}, {1, 0, 8, 9}, {3, 12, 4, 5}
код:
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
program Project7;
 
{$APPTYPE CONSOLE}
 
uses
SysUtils;
 
Var mas,rab:array[1..100,1..100] of integer;
n,m,i,j,k,p,kk,pp,s,smax,imax,jmax,b,ii,jj:integer;
begin
randomize;
Writeln('vvedite n,m>3');
Write('n=');Readln(n);
Write('m=');Readln(m);
for i:=1 to n do
for j:=1 to m do mas[i,j]:=random(9)+1;
for i:=1 to n do
begin
writeln;
for j:=1 to m do write(mas[i,j]);
end;
i:=n;
j:=m;
smax:=0;
imax:=0;
jmax:=0;
k:=1;
p:=1;
kk:=3;
pp:=3;
repeat
for i:=k to kk do
for j:=p to pp do
begin
s:=s+mas[i,j];
end;
if s>smax then
begin
smax:=s;
imax:=k;
jmax:=p;
end;
if (k<>n-2) or (pp=m) then
begin
Inc(k);
Inc(kk);
end
else
begin
if p<>m-2 then
begin
inc(p);
inc(pp);
k:=1;
kk:=3;
end;
end;
 
s:=0;
until (kk=n+1) and (pp=m);
Writeln;
kk:=imax+2;
pp:=jmax+2;
ii:=1;
jj:=1;
for i:=imax to kk do
begin
for j:=jmax to pp do
begin
rab[ii,jj]:=mas[i,j];
inc(ii);
end;
inc(jj);
ii:=1;
end;
Writeln;
for ii:=1 to 3 do
begin
writeln;
for jj:=1 to 3 do write(rab[ii,jj]);
end;
ii:=1;
jj:=1;
for i:=imax to kk do
begin
for j:=jmax to pp do
begin
mas[i,j]:=rab[jj,ii];
inc(ii);
end;
inc(jj);
ii:=1;
end;
for i:=1 to n do
begin
writeln;
for j:=1 to m do write(mas[i,j]);
end;
 
Readln;
end
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.01.2014, 13:10     перевод из Паскаля в С++
Посмотрите здесь:

C++ Перевод из паскаля в с++
C++ Перевод с Паскаля на C++
Перевод из Паскаля в C++ C++
Перевод с паскаля на с++ C++
C++ Перевод с паскаля на с++
C++ Перевод с паскаля на С++
Перевод с паскаля в С++ C++
C++ Перевод из паскаля в С++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 22:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru