|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
нужен алгоритм к этому исходнику
Код:
unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, StdCtrls, Buttons; type Vector = array[1..100] of Double; Matrix = array[1..100] of Vector; TForm3 = class(TForm) Label1: TLabel; Edit1: TEdit; StringGrid1: TStringGrid; StringGrid2: TStringGrid; Button1: TButton; Label2: TLabel; Label3: TLabel; Memo1: TMemo; BitBtn1: TBitBtn; Button2: TButton; procedure Edit1Change(Sender: TObject); procedure Button1Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form3: TForm3; implementation uses Unit1; {$R *.dfm} procedure TForm3.Button1Click(Sender: TObject); var a: Matrix; b,x: Vector; h: Double; i,j,k,n:integer; begin //Ввод данных //Размерность системы n := StrToInt( edit1.Text); //Коэффициенты for j := 0 to n - 1 do for i := 0 to n - 1 do a[i + 1, j + 1] := StrToFloat(StringGrid1.Cells[j, i]); //Правая часть уравнения for I := 0 to n - 1 do b[i + 1] := StrToFloat(StringGrid2.Cells[0, i]); //Прямой ход - исключение переменных for i:=1 to n-1 do for j:=i+1 to n do begin a[j,i]:=-a[j,i]/a[i,i]; for k:=i+1 to n do a[j,k]:=a[j,k]+a[j,i]*a[i,k]; b[j]:=b[j]+a[j,i]*b end; x[n]:=b[n]/a[n,n]; //Обратный ход - нахождение корней for i:=n-1 downto 1 do begin h:=b; for j:=i+1 to n do h:=h-x[j]*a[i,j]; x:=h/a[i,i] end; //Вывод результата for i:=1 to n do MEMO1.Lines.Add('x(' + IntToStr(i) + ')=' + FloatToStr(x)); end; procedure TForm3.Edit1Change(Sender: TObject); begin StringGrid1.ColCount:=strtoint(edit 1.Text); StringGrid1.RowCount:=strtoint(edit 1.Text); StringGrid2.RowCount:=strtoint(edit 1.Text); end; procedure TForm3.Button2Click(Sender: TObject); begin close; end; end. нарисуйте мне его! Оч прошу! Последний раз редактировалось Admin, 17.05.2010 в 10:37. |
#2
|
||||
|
||||
Воспользуйся программой Автосхема v.2.2, она сама все за тебя сделает...
В начале был Бит, потом Байт и только потом появилось Слово... |