Лабораторный практикум по программированию на языке Pascal. Суркова Е.В. - 45 стр.

UptoLike

Составители: 

44
writeln(’Исходная матрица’);
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(90)+10;
write(a[i,j]:3);
end;
writeln;
end;
До начала цикла по формированию матрицы выводится надпись «Исход-
ная матрица». Далее в цикле формируются элементы сначала первой строки и
выводятся на экран в строчку (оператор
write), затем осуществляется переход
на новую строку (
writeln) и начинается новая итерация цикла по i.
Следующий шагпоиск минимального элемента в каждой строке и замена
его на ноль.
for i:=1 to n do
begin
j_min:=1;
min:=a[i,1];
for j:=1 to m do
if a[i,j]<min then
begin
min:=a[i,j];
j_min:=j
end;
a[i,j_min]:=0;;
end;
Здесь также используется два цикла. Тело «внешнего» цикла содержит
операторы присваивания начальных значений переменным
j_min,min и цикл
перебора элементов
i-й строки по столбцам.
Тело «внутреннего» цикла состоит лишь из одного условного оператора,
поэтому в нем не нужны операторные скобки. А вот внутри условного операто-
ранесколько операторов, поэтому операторные скобки
begin..end в нем
обязательны
!
После завершения цикла по столбцам будет найден минимальный элемент
i-й строки и его положение (j_min), и произведена замена его на ноль. Далее
программа возвращается во «внешний» цикл и происходит аналогичная обра-
ботка следующей строки матрицы. Выход из внешнего цикла означает, что об-
работка матрицы завершена. Остается вывести результат на экран, снабдив вы-
веденную матрицу соответствующим текстом.
writeln(’Результирующая матрица’);
for i:=1 to n do