|
Познающий
Регистрация: 01.03.2008
Сообщений: 99
Провел на форуме: 613745
Репутация:
51
|
|
Сообщение от Stingers
Даны массивы A[5][5], B[5][5]. Для каждого массива найти максимальный элемент. Заменить все положительные элементы, расположенные на обеих диагоналях на найденный максимальный элемент.
В программе предусмотреть функции ввода массив, вывода исходного массива и преобразованного, а также функцию преобразования массива. Завтра крайний срок сдачи данного зачетного задания!! буду признателен!
Ну так как расписал не самым понятным образом, то и результат какой есть.
Во-первых не понятно, про какие обе диагонали идёт речь. Про главную и побочную в обоих матрицах? Или про главную в обоих?
Во-вторых не понятно, нужно просто написать программу, или именно с использованием функций. А если только с функциями, то почему запрет на процедуры.
В общем вот наработки, проверяй, уточнишь задание - исправлю как удобно будет.
Код:
program for_stingers;
var x,y,maxa,maxb:integer;
a,b:array [1..5,1..5] of integer;
begin
for x:=1 to 5 do
for y:=1 to 5 do begin
writeln('Введите элемент A[',x,',',y,']:');
readln(a[x,y]);
if a[x,y]>maxa then maxa:=a[x,y];
writeln('Введите элемент B[',x,',',y,']:');
readln(b[x,y]);
if b[x,y]>maxb then maxb:=b[x,y];
end;
writeln ('Массив А исходный:');
for x:=1 to 5 do begin
for y:=1 to 5 do
write(a[x,y],' ');
writeln;
end;
writeln ('Массив B исходный:');
for x:=1 to 5 do begin
for y:=1 to 5 do
write(b[x,y],' ');
writeln;
end;
for x:=1 to 5 do begin
if a[x,x]>0 then a[x,x]:=maxa;
if b[x,x]>0 then b[x,x]:=maxb;
end;
writeln ('Массив А изменённый:');
for x:=1 to 5 do begin
for y:=1 to 5 do
write(a[x,y],' ');
writeln;
end;
writeln ('Массив B изменённый:');
for x:=1 to 5 do begin
for y:=1 to 5 do
write(b[x,y],' ');
writeln;
end;
end.
Последний раз редактировалось lll6; 04.03.2009 в 18:46..
|