Консультация № 160437
14.02.2009, 11:44
0.00 руб.
0 1 1
Здравствуйте уважаемые эксперты.
Помогите с решением одной задачки:

Разработать программу для выполнения указанных операций с матрицами:
транспонирование, умножение на число, сложение матриц.

Вся надежда только на вас.
Заранее большое спасибо.

Обсуждение

Неизвестный
14.02.2009, 15:09
общий
это ответ
Здравствуйте, Ovechk!
Похожее задание уже было здесь: http://rusfaq.ru/info/question/160147
Конкретно ваше задание ниже в приложении.

Приложение:
program m;
uses CRT;
type matr=array[1..10,1..10] of real;
var i,j,k,z,n:integer;
t:real;
x:char;
a,b,c:matr;
procedure vvod_matrix(var n:integer; var matrix1:matr);
var ii,jj:integer;
begin
writeln('Vvedite poryadok matrixi:');
write('n=');
readln(n);
writeln('Vvedite elementi matrixi:');
for ii:=1 to n do
begin
for jj:=1 to n do
begin
write('[',ii,',',jj,']=');
readln(matrix1[ii,jj]);
end;
end;
end;{vvod matrixi}

procedure vivod_matrix(n:integer; matrix1:matr);
var jj,ii:integer;
begin
ii:=0;
while ii<n do
begin
ii:=ii+1;
jj:=0;
while jj<n-1 do
begin
jj:=jj+1;
write(matrix1[ii,jj]:3:0);
end;
jj:=jj+1;
writeln(matrix1[ii,jj]:3:0);
end;

end;{vivod matrixi}
begin
ClrScr;
repeat
writeln('Viberite nomer operacii:');
writeln(' 0-transponirovanie matrixi');
writeln(' 1-slojenie matrix');
writeln(' 2-umnojenie matrixi na chislo');
readln(z);
case z of
0:
begin
vvod_matrix(n,A);
vivod_matrix(n,A);
for i:=1 to n do
begin
for j:=1 to n do
begin
b[i,j]:=a[j,i];
end;
end;
writeln;
writeln('Rezultat:');
vivod_matrix(n,B);
end;
1:
begin
vvod_matrix(n,A);
vivod_matrix(n,A);
vvod_matrix(n,B);
vivod_matrix(n,B);
for i:=1 to n do
begin
for j:=1 to n do
begin
c[i,j]:=a[i,j]+b[i,j];

end;
end;
writeln;
writeln('Rezultat:');
vivod_matrix(n,c);
end;

2:
begin
writeln('Vvedite chislo:');
write('t=');
readln(t);
vvod_matrix(n,A);
vivod_matrix(n,A);
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=t*a[i,j];

end;
end;
writeln('Rezultat:');
vivod_matrix(n,A);
end;
end;
writeln('Povtor? (y/n)');

x:=readkey;
until x=char(ord('n'));
end.
Форма ответа