sum:=4*p[k,n]*q[n,m]+sum;
z[k,m]:=sum
end;
end;
{описание функции суммы (sum)}
function sum(q,p:mas; i3,j3:integer; var w:mas): real;
var m,n:integer;
begin
for m:=1 to i3 do
for n:=1 to j3 do
w[m,n]:=q[m,n]+p[m,n];
end;
begin
{очистка экрана}
clrscr;
{ввод из файла размеров и элементов матрици A}
assign (f,'C:\tp\matrA.inp');
reset(f);
read(f,i,j);
for m:=1 to i do
for n:=1 to j do read (f,a[m,n]);
close(f);
{ввод из файла размеров и элементов матрици B}
assign (f,'C:\tp\matrB.inp');
reset(f);
read(f,i2,j2);
for m:=1 to i2 do
for n:=1 to j2 do read (f,b[m,n]);
close(f);
{ввод из файла размеров и элементов матрици C}
assign (f,'C:\tp\matrC.inp');
reset(f);
read(f,i3,j3);
for m:=1 to i3 do
for n:=1 to j3 do read (f,c[m,n]);
close(f);
{вывод матрици A}
writeln(' матрица A');
mout(a,i,j);
{вывод матрици B}
writeln(' матрица B');
mout(b,i2,j2);
{вывод матрици C}
writeln(' матрица C');
mout(c,i3,j3);
{транспонирование и вывод матрици B}
tr(b,i2,j2,bt);
writeln(' B транспонированная');
mout(bt,j2,i2);
{умножение матрици A на B транспонированную}
mult(a,bt,i,j,i2,g);
writeln(' 4*A умноженная на B транспонированную');
mout(g,j2,i2);
{A*B трансп. +С)}
sum(g,c,i3,j3,e);
writeln(' 4*A*B трансп. +C');
mout(e,i3,j3);
readln;
end.
Анализ результатов расчета
В результате написания программы получаем следуюший результат:
C*((2B+A)трансп
5 6 7
10 12 14
Что удовлетворяет результату полученному в табличном процессоре Microsoft Excel, который был представлен в разделе “Контрольный вариант”. Это доказывает то что программа была написана правильно и работает коректно.
В процессе выполнения задание была освоена технология постепенного наращивания программы с одновременной отладкой и практически доказано ее преимущество перед другим вариантом. Некоторая сложность при написании подпрограмм компенсируется наглядностью и сведением к нулю ошибок, возникающих в процессе выполнения всей программы. Работа с файлами облегчает позиционные задачи, тем самым повышая производительность, продуктивность и расширяя диапазон для применения.
· « Лабораторные занятия по информатике» Часть 2. Начальное обучение программированию в ИСР Qbasic и Turbo Pascal
Безмозгин Б.З. 1996-1997
· «Turbo Pascal 7.0» О. А. Меженный - М: "Диалектика", 2001 г, 448 стр
· «Прикладное программирование» Михаил Проломов 2000г.
· «Введение в программирование» Межен Савон 1998 г.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.