Транспонирование, умножение матриц, сложение матриц Реализовать в одной программере - Turbo Pascal
Формулировка задачи:
транспонирование, умножение матриц, сложение матриц;
B^3-A^T
Реализовать в одной программере.
Помогите решить
Решение задачи: «Транспонирование, умножение матриц, сложение матриц Реализовать в одной программере»
textual
Листинг программы
uses SysUtils; var a: array [0..100, 0..100] of Integer; b: array [0..100, 0..100] of Integer; c: array [0..100, 0..100] of Integer; d: array [0..100, 0..100] of Integer; AT: array [0..100, 0..100] of Integer; i,j,k,N,s: Integer; begin Writeln('Enter matrix size'); readln(N); //Ввод матрицы А Writeln('Enter Matrix A'); for i := 1 to N do begin for j := 1 to N do begin Read(a[i,j]); end; Readln; end; //Ввод матрицы В Writeln('Enter Matrix B'); for i := 1 to N do begin for j := 1 to N do begin Read(b[i,j]); end; Readln; end; Writeln; Writeln('Matrix A'); //Вывод матрицы А for i := 1 to N do begin for j := 1 to N do begin Write(a[i,j],' '); end; Writeln; end; Writeln; //Вывод матрицы B Writeln('Matrix B'); for i := 1 to N do begin for j := 1 to N do begin Write(b[i,j],' '); end; Writeln; end; s:=0; //****Произведение матриц********* //****Квадрат матрицы************* for i := 1 to N do begin for j := 1 to N do begin for k := 1 to N do begin s:=s+b[i,k]*b[k,j]; end; d[i,j]:=s; s:=0; end; s:=0; end; //****Произведение матриц********* //****Куб матрицы************* for i := 1 to N do begin for j := 1 to N do begin for k := 1 to N do begin s:=s+b[i,k]*d[k,j]; end; c[i,j]:=s; s:=0; end; s:=0; end; Writeln; //Вывод матрицы C Writeln('Matrix C'); for i := 1 to N do begin for j := 1 to N do begin Write(c[i,j],' '); end; Writeln; end; //Транспонирование матрицы А for i := 1 to N do begin for j := 1 to N do AT[i,j]:=a[j,i]; end; //Вывод матрицы АТ Writeln('Matrix AT'); for i := 1 to N do begin for j := 1 to N do begin Write(AT[i,j],' '); end; Writeln; end; //***Разность матриц*** for i := 1 to N do begin for j := 1 to N do d[i,j]:=c[i,j]-AT[i,j]; end; //Вывод результатов Writeln('Results'); for i := 1 to N do begin for j := 1 to N do begin Write(d[i,j],' '); end; Writeln; end; Readln; end.
Объяснение кода листинга программы
- Создание переменных для матрицы А, В и С, а также для матрицы AT и массива d.
- Ввод матрицы А и В с помощью функции Read.
- Вывод матрицы А и B с помощью функции Write.
- Вычисление произведения матриц с использованием формулы для произведения матриц.
- Вычисление транспонированной матрицы А с помощью циклов.
- Вывод матрицы AT.
- Вычисление разности матриц с использованием формулы для разности матриц.
- Вывод результатов вычислений.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д