Поместим на Форму кнопку, нажатие которой приведет к вычислению выражения. Выберите в Палитре Компонентов на странице Standart пиктограмму компонента Button. В свойстве Caption Инспектора Объектов замените надпись на кнопке Button1 на Вычислить. В свойстве Font подберите шрифт. Отрегулируйте положение и размер кнопки. Затем дважды щелкните “мышью” на кнопке, после чего курсор установится в тексте процедуры-обработчика события нажатия кнопки Button1: Procedure TForm1.Button1Click(Sender:TObject). Внимательно наберите операторы этой процедуры, используя текст модуля UnLinAlg.
Текст модуля UnLinAlg
Unit UnLinAlg;
Interface
Uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
Type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Memo1: TMemo;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
Var
Form1: TForm1;
Implementation
{$R *.DFM}
// Процедура обработки события создания Формы:
procedure TForm1.FormCreate(Sender: TObject);
Begin
Edit1.Text:= '0.4'; // начальное значение X
Edit2.Text:= '8.75e-2'; // начальное значение Y
Edit3.Text:= '-19.63'; // начальное значение Z
Memo1.Clear; // очистка Memo1
// Вывод строки в Memo1:
Memo1.Lines.Add('Лабораторная работа №1 - Линейный алгоритм');
end;
// Процедура обработки события нажатия кнопки Button1:
procedure TForm1.Button1Click(Sender: TObject);
Var
x,y,z,a,b,c,u: extended; // объявление локальных переменных
Begin
x:=StrToFloat(Edit1.Text); // X присваивается содержимое Edit1
y:=StrToFloat(Edit2.Text); // Y присваивается содержимое Edit2
z:=StrToFloat(Edit3.Text); // Z присваивается содержимое Edit3
// Вычисляется выражение
a:=sqrt(x)-y*y*y;
b:=sin(a)/cos(a);
c:=Exp(5*Ln(b));
u:=c+exp(y/z)*sin(z*z);
Memo1.Lines.Add(' X = '+Edit1.Text+' Y = '+Edit2.Text+
' Z = '+Edit3.Text); // контрольный вывод X, Y, Z в Memo1
// Вывод результата в Memo1:
|
Memo1.Lines.Add(' U = '+FloatToStrF(u,ffFixed,8,3));
end;
End.
Данные, с которыми работают компоненты Edit и Memo, имеют тип String. Поэтому в процедуре TForm1.Button1Click при присваивании содержимого полей Edit1,Edit2,Edit3 переменным X,Y,Z c помощью функции StrToFloat осуществляется преобразование данных типа String в действительные значения с плавающей точкой типа Extended. Если необходимо работать с данными целого типа, используется функция StrToInt.
При выводе данных в Memo1 используется метод Add свойства Lines, причем для преобразования данных из действительного значения в строковое и управления формой представления выводимого результата используется функция FloatToStrF.
Работа с приложением
Для запуска созданного приложения нажмите пиктограмму главного меню или клавишу F9. При этом происходит компиляция модулей и, если нет ошибок, компоновка проекта и создание выполняемого файла PrLinAlg.exe. На экране появляется панель интерфейса приложения (рис.1.2).
Щелкните “мышью” на кнопке “ Вычислить ” и в поле Memo1 появляется результат. Измените исходные значения x, y, z в полях Edit и снова нажмите кнопку ” Вычислить ”. Убедитесь, что в поле Memo1 отображаются новые результаты. Завершить работу приложения можно нажатием кнопки в правом верхнем углу панели интерфейса.
В случае нештатного функционирования приложения восстановить первоначальный режим работы с проектом можно путем выбора в меню Run опции ProgramReset или нажать клавиши Ctrl+F2.