Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Implementation



{$R *.DFM}

{Обробник кнопки Обчислити}

procedure TForm1.Button1Click(Sender: TObject);

VAR x1, y1, x2, y2, x3, y3: double;

s, p, d: double;

BEGIN

{Введення початкових даних}

x1:=StrToFloat(Edit1.Text);

y1:=StrToFloat(Edit2.Text);

x2:=StrToFloat(Edit3.Text);

y2:=StrToFloat(Edit4.Text);

x3:=StrToFloat(Edit5.Text);

y3:=StrToFloat(Edit6.Text);

{Підготовка до виведення результатів }

Edit7.Text:='';

Edit8.Text:='';

Edit9.Text:='';

{Перевірка умови належності точок області }

if ((y1<=4-sqr(x1)) and (y1>=sqr(x1)-4)) and

((y2<=4-sqr(x2)) and (y2>=sqr(x2)-4)) and

((y3<=4-sqr(x3)) and (y3>=sqr(x3)-4)) then

begin

{ Точки належать області}

d:=x1*y2+ x3*y1+ x2*y3- x3*y2- x1*y3- x2*y1;

if d<>0 then begin

{ Точки утворюють трикутник}

s:=abs(d)/2;

p:=sqrt(sqr(x1-x2)+ sqr(y1-y2))+

sqrt(sqr(x2-x3)+ sqr(y2-y3))+

sqrt(sqr(x3-x1)+ sqr(y3-y1));

Edit7.Text:='Точки належать області і утворюють трикутник';

Edit8.Text:=FloatToStr(p);

Edit9.Text:=FloatToStr(s);

end

else

Edit7.Text:='Точки лежать на одній прямій';

end

else

Edit7.Text:=' Точки не належності області ';

END;

{Обробник кнопки Вихід}

procedure TForm1.Button2Click(Sender: TObject);

begin

Close;

end;

end.

В обробникові кнопки Обчислити початкові дані за допомогою функції StrToFloat перетворюються до дійсного типу і присвоюються змінним x1, y1, x2, y2, x3, y3. Результат обчислення – p, s перетворюються за допомогою функції FloatToStr з дійсного до символьного типу і виводиться. Докладно функції перетворення типів даних описані у додатку.

Тепер розроблений проект командою Run|Run можна виконати. Після завершення компіляції потрібно ввести початкові дані й натиснути кнопку Обчислити. Результат роботи програми наведений на Рис 1.2. Для завершення роботи програми потрібно натиснути кнопку Вихід.

Приклад. Задані дійсні величини . Розробити проект програми, яка впорядковує величини так, щоб і та обчислює значення функції:

Для розв’язання задачі, аналогічно, як у попередньому прикладі, командою File|New Application створимо новий проект. Присвоїмо формі заголовок Caption = Обчислення функції та програмне ім’я Name = Form1. Командою File|Save All запишемо програмний модуль у файл з іменем ULAB1_2.pas, а проект – LAB1_2.dpr.

Розробимо форму для введення початкових даних і виведення результату. Розмістимо на цій формі сім компонентів Edit для введення початкових даних x, y, z, a, b, c, d і один для виведення значення функції V. Присвоїмо цим компонентам програмні імена Edit1, Edit2, Edit3, Edit4, Edit5, Edit6, Edit7, Edit8, встановлені за замовчуванням (властивість Name), і очистимо всім значення властивості Text. Пояснення до цих компонентів зробимо за допомогою компонента Label (властивість Caption).

Крім цього, розмістимо на формі дві керуючі кнопки (компонент Button) з написами Обчислити та Вихід (властивість Caption) і програмними іменами Button1, Button2 (властивість Name).

Обробники кнопок Обчислити та Вихід містяться у програмному модулі ULAB1_2 і мають вигляд:

{Обробник кнопки Обчислити}

procedure TForm1.Button1Click(Sender: TObject);

var x, y, z: double;

a, b, c, d: double;

r, v: double;

begin

{Початкові дані }

x:=StrToFloat(Edit1.Text);

y:=StrToFloat(Edit2.Text);

z:=StrToFloat(Edit3.Text);

a:=StrToFloat(Edit4.Text);

b:=StrToFloat(Edit5.Text);

c:=StrToFloat(Edit6.Text);

d:=StrToFloat(Edit7.Text);

{Упорядкування змінних a, b, c, d }

if a > b then begin r:=a; a:=b; b:=r; end;

if c > d then begin r:=c; c:=d; d:=r; end;

{Обчислення функції V }

if ((c<=x) and (x<=d)) and

((c<=y) and (y<=d)) and ((c<=z) and (z<=d))

then

begin

{Обчислення за першою формулою }

v:=x;

if v < y then v:=y;

if v < z then v:=z;

end

else

if not ((c<=x) and (x<=d)) and

not ((c<=y) and (y<=d)) and

not ((c<=z) and (z<=d))

then

begin

{Обчислення за другою формулою }

v:=x;

if v > y then v:=y;

if v > z then v:=z;

end

else

{Обчислення за третьою формулою }

v:=(b-a)/2;

{Виведення результату }

Edit8.Text:=FloatToStr(v);

end;

{Обробник кнопки Вихід}

procedure TForm1.Button2Click(Sender: TObject);

begin

Close;

end;


Рис.1.3. Форма Обчислення функції

Результат роботи програми наведений на Рис. 1.3.





Дата публикования: 2015-04-06; Прочитано: 258 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...