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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2013, 23:07   #1
Fitch573
Пользователь
 
Регистрация: 28.11.2011
Сообщений: 18
По умолчанию Как вписывать найденный вектор в StringGrid

Код:
unit Unit2;

interface

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

type
  TForm2 = class(TForm)
    StringGrid1: TStringGrid;
    StringGrid2: TStringGrid;
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label4: TLabel;
    StringGrid4: TStringGrid;
    Button4: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

type Ta=array of array of Real;

procedure ZapolnenieStrGrid(m,n:integer;StrGrd:TstringGrid);
    var i,j:integer;
begin
   StrGrd.RowCount:=m;
   StrGrd.ColCount:=n;
   for i:=0 to StrGrd.rowCount - 1 do
     for j:=0 to StrGrd.colCount - 1 do
         StrGrd.Cells[j,i]:=FloatToStrF(i-j,ffFixed,4,3);
end;

procedure InputMasIzStrGrd(var a:Ta; StrGrd:TstringGrid);
   var m,n,i,j:integer;
begin
   m:=StrGrd.RowCount;
   n:=StrGrd.ColCount;
   SetLength(a,m,n);
   for i:=0 to m - 1 do
     for j:=0 to n - 1 do
       a[i,j]:=StrToFloat(StrGrd.Cells[j,i]);
end;

procedure  OutPutMasInStrGrd(var a:Ta; StrGrd:TstringGrid);
    var i,j:integer;
begin
   StrGrd.RowCount:=Length(a);
   StrGrd.ColCount:=Length(a[0]);
   for i:=0 to StrGrd.rowCount - 1 do
     for j:=0 to StrGrd.colCount - 1 do
         StrGrd.Cells[j,i]:=FloatToStrF(a[i,j],ffFixed,4,3);
end;

procedure vector(const a : Ta; var x : array of real);
   var i,j,n,m:integer;
 begin
  x[i]:=0;
   if a[i,j]>0 then x[i]:=x[i]+a[i,j];
 end;

procedure TForm2.Button1Click(Sender: TObject);
   var m,n:integer;
begin
   m:=StrToInt(Edit1.text);
   n:=StrToInt(Edit2.text);
   ZapolnenieStrGrid(m,n,StringGrid1);
end;

var aa:Ta;

procedure TForm2.Button2Click(Sender: TObject);
begin
   InputMasIzStrGrd(aa,StringGrid1);
   OutPutMasInStrGrd(aa,stringGrid2);
end;

procedure TForm2.Button4Click(Sender: TObject);
begin
vector(........StringGrid4)
end;

end.
Помогите, кому не трудно. Весь вечер с этой прогой сидел, и слава богу, подходит к концу. Нужно, чтобы в StringGrid4 отражался найденный вектор (procedure vector). Никак не получается его туда впихнуть...

Вот задание, если кому интересно:Дана матрица A(N,M). Вычеслить вектор X(m), где значение xj равно сумме положительных элементов
j-ого столба матрицы A.
Fitch573 вне форума Ответить с цитированием
Старый 13.02.2013, 23:22   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

А кросспостить зачем? Это некультурно.
Код:
procedure vector(const a : Ta; var x : array of real; g:TStringGrid);
   var i,j,n,m:integer;
 begin
  x[i]:=0;
   if a[i,j]>0 then begin
    x[i]:=x[i]+a[i,j];
    if i>=g.ColCount then g.ColCount:=i+1;
    g.cells[RowCount-1,i]:=FloatToStr(x[i]);
   end;
 end;
Кстати этой процедурой ты вектор не получаешь.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как работает вектор? ilia.sk8 Общие вопросы C/C++ 6 31.01.2011 18:13
вектор как закрытый член класса, как изменять его значения? Zhigool' Общие вопросы C/C++ 3 08.08.2010 23:19
Как вписывать переменные в mysql_query на C++ mysan Общие вопросы C/C++ 6 21.01.2010 01:01
Как вписывать в ячейки текст. Extez1 Общие вопросы Delphi 1 18.04.2009 14:22
Как вписывать объекты в свои процедуры? schveine Помощь студентам 4 02.10.2007 13:46