1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Павел |
4.05.2004 11:44
Сообщение
#1
|
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Репутация: 0 |
Делаю перемножение матриц но не пойму как матрицу-произведение вывести на экран. И перемножение правильно-ли?
Код var a, b, c, d, e, f, g, h, i, j, k: integer; s: real; m1, m2, m3: array [1..50,1..50] of real; Begin Write('Vvedite kolichestvo strok matrici m1 '); readln(a); Write('Vvedite kolichestvo stolbcov matrici m1 '); readln(b); randomize; for i:=1 to a do for j:=1 to b do m1[i,j]:=random(5); Write('Vvedite kolichestvo strok matrici m2 '); readln(c); Write('Vvedite kolichestvo stolbcov matrici m2 '); readln(d); for i:=1 to c do for j:=1 to d do m2[i,j]:=random(5); for i:=1 to a do begin writeln; for j:=1 to b do write(m1[i,j]:4:0, ' '); writeln; end; writeln; for i:=1 to c do begin writeln; for j:=1 to d do write(m2[i,j]:4:0, ' '); writeln; end; writeln; begin s:=0; s:=m1[i,k]*m2[k,j]; m3[i,j]:=s; end; for i:=1 to e do begin writeln; for j:=1 to f do write(m3[i,j]:4:0, ' '); writeln; end; End. |
![]() ![]() |
| Павел |
4.05.2004 14:56
Сообщение
#2
|
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Репутация: 0 |
Нашел ошибки и немного переделал, но все равно получаемая матрица состоит из нолей, только последнее значение - число.
Код Uses Crt; var a, b, c, d, e, f, g, h, i, j, k: integer; s: real; m1, m2, m3: array [1..50,1..50] of real; Begin Clrscr; Write('Vvesti kolichestvo strok matrici m1 '); readln(a); Write('Vvesti kolichestvo stolbcov matrici m1 '); readln(b); for i:=1 to a do for j:=1 to b do begin write('Vvesti m1[',i,',',j,']: '); readln(m1[i,j]); end; Write('Vvesti kolichestvo strok matrici m2 '); readln(c); Write('Vvesti kolichestvo stolbcov matrici m2 '); readln(d); for i:=1 to c do for j:=1 to d do begin write('Vvesti m2[',i,',',j,']: '); readln(m2[i,j]); end; for i:=1 to a do begin writeln; for j:=1 to b do write(m1[i,j]:4:0, ' '); writeln; end; writeln; for i:=1 to c do begin writeln; for j:=1 to d do write(m2[i,j]:4:0, ' '); writeln; end; writeln; readln; begin s:=0; for k:=1 to 3 do s:=s+m1[i,k]*m2[k,j]; m3[i,j]:=s; end; for i:=1 to a do begin writeln; for j:=1 to d do write(m3[i,j]:4:0, ' '); writeln; end; readln; End. |
Павел Вывод матрицы на экран 4.05.2004 11:44
AlaRic
m3[i,k]:=m1[i,k]*m2[i,k... 4.05.2004 18:47
Lik to AlaRic>> перемножение не массивов а матри... 5.05.2004 0:34
Павел to Lik>> да, для себя.
а где здесь ошибка?
к... 5.05.2004 6:11
Павел Все, разобрался. Только и не хватало перечисления.... 5.05.2004 22:15![]() ![]() |
|
Текстовая версия | 9.12.2025 1:45 |