Delphi-Help

Главная Статьи Массивы Задача 243 на Pascal

Задача 243 на Pascal

Оцените материал
(2 голосов)


Задача 243 на Pascal

Даны три квадратные матрицы третьего порядка. Вывести на экран ту из них, норма которой наименьшая. В качестве нормы матрицы взять максимум модулей ее элементов. Нахождение нормы матрицы оформить в виде процедуры.

const
p=3;                                {порядок матрицы}
 
type
tip_matr=array[1..p,1..p]of integer;{тип для матрицы}
var
a,b,c:tip_matr;                     {три матрицы    }
i,j:integer;                        {для цикла      }
n_a,n_b,n_c:integer;                {норма матрицы  }
 
{процедура - получить норму матрицы
m - матрица в которой находится норма
n - сюда записывается значение нормы матрицы}
PROCEDURE get_norma(m:tip_matr; var n:integer);
var
max:integer;
BEGIN
max:=m[1,1];
for i:=1 to p do
for j:=1 to p do if ABS(m[i,j])>max then max:=ABS(m[i,j]);
n:=max;
END;
 
{процедура печатает матрицу на экран}
PROCEDURE print_array(m:tip_matr);
BEGIN
for i:=1 to p do
 begin
  for j:=1 to p do write('  ',m[i,j]:3);
  writeln;
 end;
writeln;
END;
 
BEGIN
randomize;
for i:=1 to p do {загрузка значений элементов во все матрицы}
for j:=1 to p do
 begin
  a[i,j]:=random(50)-random(50);
  b[i,j]:=random(50)-random(50);
  c[i,j]:=random(50)-random(50);
 end;
 
writeln('ИСХОДНЫЕ МАТРИЦЫ');
writeln('Матрица A:');
print_array(a);
writeln('Матрица B:');
print_array(b);
writeln('Матрица C:');
print_array(c);
 
{получить длякаждой матрицы её норму}
get_norma(a,n_a);
get_norma(b,n_b);
get_norma(c,n_c);
 
writeln('Матрица с наименьшей нормой:');
if (n_a <= n_b)and(n_a <= n_c) then print_array(a) else
if (n_b <= n_a)and(n_b <= n_c) then print_array(b) else
if (n_c <= n_b)and(n_c <= n_a) then print_array(a);
readln;
END.

Замечание! Если я правильно понял: норма матрицы - это максимальное значение элемента матрицы взятое по модулю. В противном случае, если норма матрицы это что-то другое, то процедуру PROCEDURE get_norma(m:tip_matr; var n:integer); нужно изменить.

Прочитано 9091 раз
Другие материалы в этой категории: « Задача 242 на Pascal Задача 244 на Pascal »

Авторизация



Счетчики