Рис. 2.13. Создание классов для решения систем алгебраических уравнений
Формируем процедуры обработки нажатия кнопок и компилируем программу. Текст модуля приводим ниже:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms, Dialogs, Grids, StdCtrls, ExtCtrls, TeeProcs,
TeEngine, Chart, Series;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
StringGrid1: TStringGrid;
Label2: TLabel;
StringGrid2: TStringGrid;
Label1: TLabel;
StringGrid3: TStringGrid;
Label3: TLabel;
procedure Button3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
Type
mas1 = array[1..3] of Real;
mas3 = array[1..3,1..3] of Real;
var Form1:TForm1;
implementation
{$R *.dfm}
procedure Metod(A:mas3;B:mas1;var X:mas1);
var
d,d1,d2,d3 : real;
begin
d :=A[1,1]*A[2,2]*A[3,3]+A[1,2]*A[2,3]*A[3,1]+A[2,1]*A[3,2]*A[1,3]A[1,3]*A[2,2]*A[3,1]-A[1,2]*A[2,1]*A[3,3]-A[2,3]*A[3,2]*A[1,1];
d1:=B[1]*A[2,2]*A[3,3]+A[1,2]*A[2,3]*B[3]+B[2]*A[3,2]*A[1,3]A[1,3]*A[2,2]*B[3]-A[1,2]*B[2]*A[3,3]-A[2,3]*A[3,2]*B[1];
d2:=A[1,1]*B[2]*A[3,3]+B[1]*A[2,3]*A[3,1]+A[2,1]*B[3]*A[1,3]A[1,3]*B[2]*A[3,1]-B[1]*A[2,1]*A[3,3]-A[2,3]*B[3]*A[1,1];
d3:=A[1,1]*A[2,2]*B[3]+A[1,2]*B[2]*A[3,1]+A[2,1]*A[3,2]*B[1]B[1]*A[2,2]*A[3,1]-A[1,2]*A[2,1]*B[3]-B[2]*A[3,2]*A[1,1];
x[1]:=d1/d;
x[2]:=d2/d;
x[3]:=d3/d;
end;
// процедура закрытие приложения
procedure TForm1.Button3Click(Sender: TObject);
begin
Close
end;
// процедура обработки кнопки "О программе"
procedure TForm1.Button2Click(Sender: TObject);
begin
Application.MessageBox('Программу выполнила студентка '+
'группы ТЭ-11 Юсова Н.Е.','О программе')
end;
// процедура обработки кнопки "Решение"
procedure TForm1.Button1Click(Sender: TObject);
var i,j : integer;
A : mas3;
B, X : mas1;
begin
for i:=1 to 3 do
for j:=1 to 3 do
A[i,j]:=StrToFloat(StringGrid1.Cells[j-1,i-1]);
for i:=1 to 3 do
B[i]:=StrToFloat(StringGrid2.Cells[0,i-1]);
Metod(A,B,X);
for i:=1 to 3 do
StringGrid3.Cells[0,i-1]:=FloatToStrF(X[i],ffFixed,6,3);
end;
end.
ЛИТЕРАТУРА
1. Фаронов В.В. Delphi. Программирование на языке высокого уровня: учебник для вузов – СПб.: Питер, 2005. – 640 с.
2. Фаронов В.В. Delphi 5. Учебный курс. – М.: «Нолинж», издатель Молгачева С.В., 2001. –608 с.
3. Программирование в среде Delphi: Практическое пособие по курсу “Информатика” для студентов всех специальностей дневного отделения/Авт.-сост.: Е.В. Коробейникова, В.И. Токочаков. – Гомель: ГГТУ им. П.О. Сухого, 2004. – 24 с.
4. Программирование в среде Delphi: Практикум к лаб. работам по курсу “Информатика” для студентов всех специальностей днев. формы обучения/Авт.-сост.: В.И. Токочаков, Е.В. Коробейникова, К.С. Курочка. – Гомель: ГГТУ им. П.О. Сухого, 2004. – 25 с.
2. РАЗРАБОТКА ПРИЛОЖЕНИЙ В СРЕДЕ DELPHI . . . . . . . . . 3
2.5. Разработка приложения Delphi, реализующего циклический алгоритм. Построение графика с использованием компонента PaintBox . . . . . . . . . . . . . . . . . . . . . 3
2.6. Разработка приложения Delphi, реализующего циклический алгоритм. Построение графика с использованием компонента Chart . . . . . . . . . . . . . . . . . . . . . . . . 8
2.7. Простейшие приемы работы с одномерными массивами . . 12
2.8. Выделение минимального и максимального элементов массива . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.9. Простейшие приемы работы с двумерными массивами . . . 19
2.10. Простейшие приемы работы с квадратными матрицами . . 22
2.11. Простейшие приемы работы со строками . . . . . . . . . . . . . . 25
2.12. Простейшие приемы работы с многострочным текстом . . 29
2.13. Простейшие приемы работы с классами геометрических фигур . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.14. Решение систем алгебраических уравнений . . . . . . . . . . 34
Литература . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.