Другие языки программирования и технологии

Составить программу в паскаль

Вариант 6
Program P1;
uses crt;
const m=5;
n=5;
type mas=array [1..m, 1..n] of real;
var a: mas;
i, j: integer;
max: real;
begin
clrscr;
writeln ('Введите значения элементов массива. После ввода каждого нажимайте клавишу Enter.');
for i:=1 to m do begin
for j:=1 to n do begin
write ('Введите ', i, ' ', j, 'элемент массива: ');
readln (a[i,j]);
end;
end;
writeln ('Вы ввели массив: ');
for i:=1 to m do begin
for j:=1 to n do begin
write (' ', a[i, j]);
end;
writeln (' ');
end;
max:=a[1,1];
for i:=1 to m do begin
for j:=1 to n do begin
if a[i,j]>max then max:=a[i,j];
end;
end;
for i:=1 to m do begin
for j:=1 to n do begin
if a[i,j]>0 then a[i,j]:=max;
end;
end;
writeln ('Этот массив после преобразования:');
for i:=1 to m do begin
for j:=1 to n do begin
write (' ', a[i, j]);
end;
writeln (' ');
end;
write ('Программа завершена. Для выхода нажмите клавишу Enter.');
readkey;
end.
Николай Смирнов
Николай Смирнов
43 559
Лучший ответ
С динамической матрицей, размер которой и все её элементы вводятся с экрана (каждый новый элемент -с новой строки!):

var i, j, max, m, n: integer;
a: array of array of integer;

procedure print(); begin
for i := 0 to n - 1 do begin
for j := 0 to m - 1 do write(a[i, j]: 4);
writeln() end end;

begin write('n m: '); readln(n, m);
setlength(a, n, m); for i := 1 to n do
for j := 1 to m do begin write('a[', i, ',', j, '] = ');
readln(a[i - 1, j - 1]) end; print(); max := a[0, 0];
for i := 0 to n - 1 do for j := 0 to m - 1 do
if (a[i, j] > max) then max := a[i, j];
writeln('max = ', max);
for i := 0 to n - 1 do for j := 0 to m - 1 do
if (a[i, j] > 0) then a[i, j] := max; print() end.
Капец тебе, никто не напишет ))
Иди варить борщ, будешь поваром))
Роман Алексеев
Роман Алексеев
37 945
Николай Смирнов Говори только за себя.