![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 11.12.2010
Сообщений: 2
|
![]()
Здравствуйте.
Прошу помощи. Написала (вернее, пыталась написать программу), которая перемножит 2 матрицы, считанных из одного файла и выведет результат на экран. В итоге не смогла даже скомпилировать. Что получилось: program soucin_matic; const X=1000; var mx1: array[1..X,1..X] of longint; mx2: array[1..X,1..X] of longint; mx3: array[1..X,1..X] of longint; n1,m1,n2,m2: integer; i,j,k,s: integer; procedure OpenFile(Fil1:string); var F: text; il, jl: integer; s: string; begin Assign(F,Fil1); Reset(F); Read(F,n1); Readln(F,m1); for jl:=1 to m1 do for il:=1 to n1 do begin Read(F,mx1[il,jl]); end; Close(F); Assign(F,Fil1); Reset(F); end; Read(F,n2); Readln(F,m2); for jl:=1 to m2 do for il:=1 to n2 do begin Read(F,mx2[il,jl]); end; Close(F); end; begin OpenFile(matice.in); if n1<>m2 then begin Writeln('Ошибка!'); for k:=1 to m1 do begin for i:=1 to n2 do begin s:=0; for j:= 1 to m2 do begin s:=s+mx1[j,k]*mx2[i,j]; end; mx3[i,k]:=s; end; end; write(i,k); writeln(s); end. В паскале программирую 2 месяц, поэтому просьба не критиковать меня лично, сама знаю, что ума не палата. Но если будут комментарии по делу, буду благодарна. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 04.05.2010
Сообщений: 495
|
![]()
Так получше. По крайней мере компилируется.
Ты обе исходные матрицы из одного файла читаешь ? Код:
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948 |
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 11.12.2010
Сообщений: 2
|
![]()
Спасибо.
Да, нужно, чтобы из одного. Мда, скомпилировать получается, но тут же ошибка выдаётся. Буду думать дальше. Мне почему-то кажется, что на выводе ошибка. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 04.05.2010
Сообщений: 495
|
![]()
Если из одного, зачем ты его два раза открываешь?
И , хотя это не принципиально, обычно просмотр матрицы с помощью двух циклов делают сначала по строкам, потом по столбцам. В самой первой теме раздела "Помощь студентам" есть миллион исходников посвященных работе с матрицами. Код:
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948 |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Умножение матриц Си | Slame | Помощь студентам | 4 | 16.12.2010 14:34 |
Умножение матриц) | Guzal | Общие вопросы C/C++ | 1 | 26.10.2010 21:56 |
Умножение матриц | Alyonka_v | Помощь студентам | 2 | 18.08.2009 21:51 |