Текст программы
На листинге 1 представлен текст программы упорядочения матрицы MxN
(где N>1, M>1), построчно по возрастанию.
Листинг 1
program lab10;
uses crt;
var A:array[1..100,1..100] of real; t:real;
i,j,c,z,N,M:integer;
tN,tM,tA:string;
begin
clrscr;
repeat
write('N=');
readln(tN);
val(tN,N,z);
if ((z<>0) or (N<=1)) then
begin
writeln('WARNING! Не верное значение переменной!');
writeln('Попробуйте еще раз...')
end
else
until ((z=0) and (N>1));
repeat
write('M=');
readln(tM);
val(tM,M,z);
if ((z<>0) or (M<=1)) then
begin
writeln('WARNING! Не верное значение переменной!');
writeln('Попробуйте еще раз...')
end
else
until ((z=0) and (M>1));
for i:=1 to N do
for j := 1 to M do
begin
repeat
write('A[',i,',',j,']=');
readln(tA);
val(tA,A[i,j],z);
if (z<>0) then
begin
writeln('WARNING! Не верное значение переменной!');
writeln('Попробуйте еще раз...')
end
else
until (z=0);
end;
for i:=1 to N do
for c:=1 to N do
begin
for j:=1 to M-1 do
if A[i,j]>A[i,j+1] then
begin
t:=A[i,j];
A[i,j]:=A[i,j+1];
A[i,j+1]:=t;
end;
end;
writeln;
for i:=1 to N do
begin
for j:=1 to M do
begin
write('| ');
write(A[i,j]:6:2);
write(' | ');
end;
writeln;
end;
writeln;
write('Нажмите клавишу ENTER для завершения...');
readln;
end.
Инструкция пользователю
Данная программа выстраивает элементы в каждой строке матрицы по возрастанию. От пользователя требуется ввод количества столбцов (N) и ввод количества строк(M). Далее нужно ввести сами элементы матрицы, после чего программа автоматически распределит элементы по возрастанию в строке.
Инструкция программисту
Данная программа выстраивает элементы в каждой строке матрицы по возрастанию. Для выполнения данной операции использовались свойства массива и операторов цикла. Также включена проверка вводимых данных, чтобы избежать ввода недопустимых значений, приводящих к сбою программы.
Тип всех переменных, используемых в программе, приведены в таблице 1.
Таблица 1 - Структуры данных, используемых в программе
Имя |
Тип |
Предназначение |
A |
array |
Переменная массива |
N |
integer |
Переменная количества столбцов матрицы |
M |
integer |
Переменная количества строк матрицы |
i |
integer |
Переменная, предназначенная для работоспособности цикла(порядковое число переменной N) |
j |
integer |
Переменная, предназначенная для работоспособности цикла(порядковое число переменной M) |
c |
integer |
Переменная, предназначенная для работоспособности операции выстраивания элементов матрицы по возрастанию |
tN |
string |
Переменная проверки ввода/вывода под переменную N |
tM |
string |
Переменная проверки ввода/вывода под переменную M |
tA |
string |
Переменная проверки ввода/вывода под переменную A |
z |
integer |
Переменная результата проверки ввода/вывода |