Pascal abs составить программу для нахождения произведения двух квадратных матриц произвольного размера.
209
426
Ответы на вопрос:
// pascalabc.net 3.1, сборка 1256 от 21.06.2016 var i,j,k,n: integer; a,b,c: array[,] of integer; begin write('число строк (столбцов) матрицы: '); read(n); setlength(a,n,n); setlength(b,n,n); setlength(c,n,n); randomize; writeln('матрица a'); for i: =0 to n-1 do begin for j: =0 to n-1 do begin a[i,j]: =random(90)+10; write(a[i,j]: 3) end; writeln end; writeln('матрица b'); for i: =0 to n-1 do begin for j: =0 to n-1 do begin b[i,j]: =random(90)+10; write(b[i,j]: 3) end; writeln end; // умножение и вывод writeln('матрица c'); for i: =0 to n-1 do begin for j: =0 to n-1 do begin c[i,j]: =0; for k: =0 to n-1 do c[i,j]: =c[i,j]+a[i,k]*b[k,j]; write(c[i,j]: 6) end; writeln end; end. тестовое решение число строк (столбцов) матрицы: 5 матрица a 25 81 17 87 40 36 79 25 98 66 90 64 73 30 54 75 12 92 48 84 94 91 71 96 94 матрица b 38 96 54 10 24 66 47 13 15 81 87 33 35 11 19 48 20 16 40 14 34 94 91 97 64 матрица c 13311 12268 8030 9012 11262 15705 16158 11420 12142 13334 17271 19733 13641 9101 12607 16806 19656 15838 12010 10568 23559 26400 18834 16044 18336
//pascal abc.net 3.1 сборка 1256 //без ввода размерности const n=3; var ma1,ma2,mar: array[1..n,1..n] of integer; i,j,z: integer; begin randomize; writeln('matrix 1: '); for i: =1 to n do begin for j: =1 to n do begin ma1[i,j]: =random(10); write(ma1[i,j]: 4); end; writeln; end; writeln('matrix 2: '); for i: =1 to n do begin for j: =1 to n do begin ma2[i,j]: =random(10); write(ma2[i,j]: 4); end; writeln; end; writeln('final matrix: '); for i: =1 to n do begin for j: =1 to n do begin for z: =1 to n do mar[i,j]: =mar[i,j]+ma2[z,j]*ma1[i,z]; write(mar[i,j]: 4); end; writeln; end; end. //c вводом размерности var ma1,ma2,mar: array[,] of integer; i,j,z,n: integer; begin randomize; readln(n); setlength(ma1,n,n); setlength(ma2,n,n); setlength(mar,n,n); writeln('matrix 1: '); for i: =0 to n-1 do begin for j: =0 to n-1 do begin ma1[i,j]: =random(10); write(ma1[i,j]: 4); end; writeln; end; writeln('matrix 2: '); for i: =0 to n-1 do begin for j: =0 to n-1 do begin ma2[i,j]: =random(10); write(ma2[i,j]: 4); end; writeln; end; writeln('final matrix: '); for i: =0 to n-1 do begin for j: =0 to n-1 do begin for z: =0 to n-1 do mar[i,j]: =mar[i,j]+ma2[z,j]*ma1[i,z]; write(mar[i,j]: 4); end; writeln; end; end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Petrovaaleksanik25.02.2021 18:29
-
Настюнькаz29.03.2023 20:12
-
Sobakopes13.04.2022 16:39
-
Kleira23.07.2021 14:51
-
aliina00022.12.2022 14:15
-
тошкк18.07.2021 05:53
-
лиана25203.05.2020 10:23
-
Smillekate13.05.2022 02:10
-
Миша2007200706.03.2023 17:40
-
semak0315.10.2021 21:26
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.