Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы Алгоритм и Програм.doc
Скачиваний:
5
Добавлен:
14.09.2019
Размер:
407.04 Кб
Скачать

Программа

Program prim23;

const m=2;

n=2;

type matr=array[1..m,1..n] of real;

var i,j:integer;

a,b,c:matr;

procedure readmatr(var x:matr); {процедура ввода матрицы}

begin

for i:=1 to m do

for j:=1 to n do

read(x[i,j]);

end;

begin

writeln('Ввести матрицу a');

readmatr(a); {обращение к процедуре ввода матрицы a(m,n)}

writeln('Ввести матрицу b');

readmatr(b); {обращение к процедуре ввода матрицы b(m,n)}

writeln('Матрица с');

for i:=1 to m do

begin

for j:=1 to n do

begin

c[i,j]:=a[i,j]+b[i,j];

write(c[i,j]:5:2,' ');

end;

writeln;

end;

end.

Исходные данные Результаты

Матрица a Матрица b Матрица c

-5.6 7.5 8.2 1.0 2.60 8.50

3.2 4.0 -8.1 9.9 -4.90 13.90

Пример 24. Переписать все отрицательные элементы матриц A и B в одномерный массив Z.

Программа

Program prim24;

type

mas1=array[1..50] of real;

mas2=array[1..5,1..5] of real;

var

a,b : mas2;

z : mas1;

m1,n1,m2,n2,i,j,k : integer;

procedure vvod(var x:mas2;m,n:integer); {процедура ввода матрицы}

begin

for i:=1 to m do

for j:=1 to n do

read(x[i,j]);

end;

procedure negmassiv(x:mas2;m,n:integer;var p:integer;var s:mas1); {процедура,

переписывающая отрицательные элементы

матрицы в одномерный массив}

begin

for i:=1 to m do

for j:=1 to n do

if x[i,j]<0 then

begin

p:=p+1;

s[p]:=x[i,j];

end;

end;

begin

writeln('Ввести размерность матрицы a');

readln(m1,n1);

writeln('Ввести матрицу a(', m1, ',', n1, ')');

vvod(a,m1,n1); {обращение к процедуре ввода матрицы a(m1,n1)}

writeln('Ввести размерность матрицы b');

readln(m2,n2);

writeln('Ввести матрицу b(', m2, ',', n2, ')');

vvod(b,m2,n2); {обращение к процедуре ввода матрицы b(m2,n2)}

k:=0;

negmassiv(a,m1,n1,k,z); {обращение к процедуре записи отрицательных

элементов матрицы a(m1,n1) в массив z}

negmassiv(b,m2,n2,k,z); {обращение к процедуре записи отрицательных

элементов матрицы b(m2,n2) в массив z}

writeln(' Массив z');

for i:=1 to k do

writeln('z[',i,']=',z[i]:5:1);

end.