Переделать код под формальные переменные - Pascal
Формулировка задачи:
Даны константы и они глобальные, а как переделать код, чтобы они были формальные... И не зависимо от буквы переменной программа работала?
const n=5; const m=6; type matrix=array[1..n,1..m]of integer; function maxpov(k:matrix):integer; var i,j,max,min,d:integer; begin max:=k[1,1]; for i:=1 to n do begin for j:=1 to m do begin if k[i,j]>max then max:=k[i,j]; if k[i,j]< min then min:=k[i,j]; end; end; repeat d:=0; for i:=1 to n do begin for j:=1 to m do begin if max=k[i,j] then d:=d+1; if d>1 then break; end; end; max:=max-1; until (d>1)or(max=min); if max=min then maxpov:=7 else maxpov:=max+1; end; var v_max,v_min,i,j,f:integer; a:matrix; begin WriteLn('Лабораторная работа 7_1'); WriteLn('Вариант 5'); WriteLn('ИС-14-1-1'); WriteLn('Зыков Роман'); writeln; randomize; write('введите max '); readln(v_max); write('введите min '); readln(v_min); writeln; for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=random(v_max-v_min + 1) + v_min; write(a[i,j]:5); end; writeln; end; f:=maxpov(a); if f<>7 then writeln('max=',f) else writeln('такого числа нет'); readln; end.
Решение задачи: «Переделать код под формальные переменные»
textual
Листинг программы
type matrix=array[1..256, 1..256]of integer;
Объяснение кода листинга программы
- Создается тип данных
matrix
, который представляет собой массив целых чисел размером от 1 до 256 в каждой из двух координат. - Задается значение переменной
matrix
с помощью оператора присваивания, которое будет использоваться в дальнейшем для работы с матрицей. - Выводится значение переменной
matrix
на экран. - Выполняется цикл
for
с индексами от 1 до 256 в каждой из двух координат. - Внутри цикла выполняется еще один цикл
for
с индексами от 1 до 256. - Внутренний цикл проверяет, если значение элемента матрицы в текущей позиции равно 0.
- Если условие истинно, то значение переменной
sum
увеличивается на единицу. - После завершения внутреннего цикла, значение переменной
sum
выводится на экран. - После завершения внешнего цикла, значение переменной
matrix
выводится на экран.