Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите решить задачу! 
:(
    Опции темы
Guest_MIR
Дата 10.5.2003, 02:03 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Требуется реализовать на Паскале алгоритм умножения матрицы на матрицу как можно проще.
подскажите как это можно попроще реализовать или кинте пас-файл.
заранее спасибо.
  Вверх
i...
Дата 10.5.2003, 06:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 41
Регистрация: 6.5.2003

Репутация: нет
Всего: нет



Цитата(Guest_MIR @ 10.5.2003, 02:03)
Требуется реализовать на Паскале алгоритм умножения матрицы на матрицу как можно проще.
подскажите как это можно попроще реализовать или кинте пас-файл.
заранее спасибо.

Вот, нас учили так:

uses wincrt;

const RSize = 5;
CSize = 5;

type matr = array[1..RSize,1..CSize] of double;

var a,b,c: matr;
i,j,k,n,m,l: byte;

Begin
write('n = '); read(n);
write('m = '); read(m);
{Ввод матрицы A}
for i := 1 to n do
for j := 1 to m do
begin
write('a[',i,',',j,'] = ');
read(a[i,j]);
end;
write('l = '); read(l);
{задается только один размер, т.к. количество строк матрицы A должно
быть равно количеству столбцов матрицы B}
{Ввод матрицы B}
for i := 1 to m do
for j := 1 to l do
begin
write('b[',i,',',j,'] = ');
read(b[i,j]);
end;
{C = A * B}
for i := 1 to n do
for j := 1 to l do
begin
c[i,j] := 0;
for k := 1 to m do
c[i,j] := c[i,j] + a[i,k] * b[k,j];
end;
{Вывод результата}
for i := 1 to n do
begin
for j := 1 to l do write(c[i,j]:8:0);
writeln;
end;
End.

Можно не вводить элементы матрицы, а заполнять их псевдослучайно:

a[i,j]:= random(6); {для матрицы A}
b[i,j]:= random(6); {для матрицы B}

И не забудь в начале программы написать Randomize, если будешь использовать random!
PM MAIL   Вверх
fk_
Дата 10.5.2003, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 30.4.2003
Где: Санкт-Петербург

Репутация: нет
Всего: нет



Хех... а я не давно делал перемножение исходной разреженной матрицы на транспонированную разреженную... детский сад, но забавно smile.gif
Если надо могу кинуть исходник
PM MAIL WWW ICQ   Вверх
Guest_MIR
Дата 11.5.2003, 01:21 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Просто афигительное Спасибо!!! а то т.к. я ещё не особо силён в программировании у меня такая тема на 3 экрана получалась 8)
МИР!
  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0432 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.