Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.11.2013, 22:45   #1
Tonikmod
 
Регистрация: 11.11.2013
Сообщений: 9
По умолчанию перемножение матриц значения котрых взато из файла

Исправьте ошибки или допишите, а то думал, думал и голову сломал
Вот код на Delphi7
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    StringGrid1: TStringGrid;
    StringGrid2: TStringGrid;
    Button3: TButton;
    StringGrid3: TStringGrid;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
   n,m,l: integer;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);
Var
 F: TextFile;
 i,j: Integer;
 S: String;
begin
 AssignFile(F, 'C:\Users\Tonikmod\Documents\Delphi\1popipka\3.txt');
 Reset(F);
 For i:= 0 To StringGrid1.ColCount - 1 Do
  For j:= 0 To StringGrid1.RowCount - 1 Do
   begin
    Readln(F, S);
    StringGrid1.Cells[i,j]:= S;
   end;
 CloseFile(F);
end;

procedure TForm1.Button1Click(Sender: TObject);
Var
 A: TextFile;
 i,j: Integer;
 S: String;
begin
 AssignFile(A, 'C:\Users\Tonikmod\Documents\Delphi\1popipka\f.txt');
 Reset(A);
 For i:= 0 To StringGrid2.ColCount - 1 Do
  For j:= 0 To StringGrid2.RowCount - 1 Do
   begin
    Readln(A, S);
    StringGrid2.Cells[i,j]:= S;
   end;
 CloseFile(A);

end;

procedure TForm1.Button3Click(Sender: TObject);
  var a,b,c: array [1..100,1..100] of real;
       i,j,p: integer;
       s: real;
begin
   for i:=1 to n do
     for j:=1 to m do
       a[i,j]:=StrToFloat(StringGrid1.Cells[j-1,i-1]);
 
   for i:=1 to m do
     for j:=1 to l do
       b[i,j]:=StrToFloat(StringGrid2.Cells[j-1,i-1]);
 
   for i:=1 to n do
     for j:=1 to l do
       begin
         s:=0;
         for p:=1 to m do
           s:=s+a[i,p]*b[p,j];
         c[i,j]:=s;
       end;
 
   for i:=1 to n do
     for j:=1 to l do
       StringGrid3.Cells[j-1, i-1]:=FloatTostr(c[i,j]);
       end;
       end.

Последний раз редактировалось Stilet; 11.11.2013 в 22:55.
Tonikmod вне форума Ответить с цитированием
Старый 11.11.2013, 22:56   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Так а что здесь не так?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.11.2013, 14:48   #3
Tonikmod
 
Регистрация: 11.11.2013
Сообщений: 9
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Так а что здесь не так?
не перемножает почему то
Tonikmod вне форума Ответить с цитированием
Старый 12.11.2013, 16:13   #4
Tonikmod
 
Регистрация: 11.11.2013
Сообщений: 9
По умолчанию

Все сам нашел ошибку
Tonikmod вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перемножение матриц N * M и M * L Pan_rust Помощь студентам 0 13.05.2011 10:14
Перемножение матриц superkot Общие вопросы C/C++ 4 13.04.2010 20:55
Перемножение матриц stscolt Помощь студентам 0 09.10.2009 16:54
Перемножение матриц Blad47 Общие вопросы C/C++ 1 02.02.2009 00:21
Перемножение матриц Арина Помощь студентам 1 18.05.2007 19:21