Бақылау жұмысы Delphi тілінің негізгі компоненттері Мақсаты



Дата26.06.2017
өлшемі52.2 Kb.
#15714



Бақылау жұмысы

Delphi тілінің негізгі компоненттері
Мақсаты:

Айнымалылар типін қолдану – бүтін және нақты (integer және real);

Жолдық деректерді сандарға және сандарды жолдық қатарларға ауыстыру үшін StrToInt; StrToFloat, IntToStr FloatToStr ; Format() функцияларын қолдану;

Хабарламаны жеке терезеде шығару үшін ShowMessage процедурасын пайдалану.


ВАШ ВЕС жобасы
Тапсырма

Адамның оптимальді салмағы есептеу үшін адам бойынан 100 алып тастау керек. Егер адамның нақты салмағы оптимальді салмақтан үлкен болса онда адам толық, егер кем болса арық болып саналады.

1. Жаңа проект құрыңыз

2
. Формаға суретте көрсетілген компоненттерді орналастырыңыз.


Edit1 – салмақ, Edit2-ге – бойының ұзындығы (см) енгізіледі .

3. Программа кодын және проектіні Unit2.pas и Pr3.dpr деген тапен сақтаңыз.

4. Программа коды терезесінің VAR бөліміне нақты салмақты (faktW), оптимальді салмақты (optW), бойының мәнін (Rost) және оптимальді салмақ пен нақты салмақ айырмасын (Delta) сақтайтын айнымалыларды енгізіңіз. VAR factW, optW, Rost, Delta : integer;

5. Button1 батырмасын шерту процедурасына келесі кодты жазыңыз:



Объект

Object Inspector терезесінің бөлімі

Қасиет/Оқиға

Мәні/Әрекет

Button

Events

OnClick

factW := StrToInt(Edit1.text);

Rost := StrToInt(Edit2.Text);

OptW :=Rost - 100;

Delta := abs(factW - OptW);

if OptW = factW then

Label3.caption := 'Ваш вес идеален!'

else

if OptW > factW then



Label3.caption := 'Вам надо поправиться на '+IntToStr(Delta)+' кг.'

else


Label3.caption := 'Вам надо похудеть на '+IntToStr(Delta)+' кг.'

Түсініктеме:

StrToInt функциясы жолды бүтін санға аударады, IntToStr функциясы керісінше – бүтін санды жолға ауыстырады.

6. Программаға кез келген ондық сандар енгізу үшін айнымалылардың типін нақты типке - Real өзгертеміз: VAR factW, optW, Rost, Delta : real;

Жолды нақты типке және нақты сандарды жолға ауыстыру үшін FloatToStr және StrToFloat функциялары қолданылады. Button1 компонентінің OnClick оқиғасына сәйкес өзгертулер енгізіңіз.

7. Проектіні сақтап, орындаңыз.

Өздік жұмыс




Тапсырма

Көмек

1

Нақты сандарды форматтау және ауыстыру үшін FloatToStr() функциясының орнына Format(‘ %f ’,[айнымалы]) функциясын қолданыңыз. Мысалы, Format(‘%f ‘, [Delta])




2

Форматтау және ауыстыру үшін Format функциясын келесі түрде қолданыңыз: Format(‘Строка %f’,[айнымалы]).

Мысалы, Format(‘Вам надо похудеть %f',[Delta]) .






3

Жобаны жақсарыңыз:

Программа тақырыбын жазыңыз;

Шығарылатын хабар мәтінінің қарпін (шрифт) өзгертіңіз (түсін, өлшемін);

Программадан шығу батырмасын қойыңыз;

Программаны қайта орындау жағдайын жасаңыз (Сұхбат жобасын қараңыз).





4

Салмақ және бойының ұзындығы мәні ретінде теріс сан қабылданбайтын етіп өзгертіңіз.

ShowMessage('Ошибочная запись числа: ' + Edit1.Text);

6. Массаны есептеу үшін дене массасының индексі қолданыңыз.

Салмақ – X,

Бойының ұзындығы – Y (метр).

Дене массасының индексі – A, мұндағы A = X / Y2 (кг/м2)

Нәтиже келесі кесте бойынша анықталады:




Индекс мәні

Нәтиже (экранға шығарылатын хабар)

1

A<18

Большой недовес

2

18<=A<20

Маловато и небезопасно, можно получить истощение

3

20<=A<=25

Идеально

4

26

Легкий недобор

5

30

Срочно нужно худеть

3 программа листингі


unit Unit 5 ;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,



Dialogs, StdCtrls, Buttons;

type


TForm1 = class(TForm)

Edit1: TEdit;

Edit2: TEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Button1: TButton;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

procedure Button1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure Edit2Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure Edit2KeyPress(Sender: TObject; var Key: Char);
private

{ Private declarations }

public

{ Public declarations }



end;
var

Form1: TForm1;


implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);

VAR


x,y,k : real;

begin


x:=StrToFloat(Edit1.Text);

y:=StrToFloat(Edit2.Text);

y:= S qr(y/100);

k:=x/y;


if k<18 then Label3.caption := 'Большой недовес'

else


if (k>=18)and (k<20)then Label3.caption := 'Маловато и небезопасно, можно получить истощение'

else


if (k>=20)and(k<=25)then Label3.caption := 'Идеально'

else


if (k>25)and(k<=30) then Label3.caption := 'Легкий перебор'

else


if k>30 then Label3.caption := 'Срочно нужно худеть';

end;


procedure TForm1.BitBtn2Click(Sender: TObject);

begin


Label3.Caption := '';

Edit1.Text := '';

Edit2.Text := '';

Form1.ActiveControl := Edit1;

Button1.Enabled := false;

Label2.Visible := false;

Edit2.Visible := false;
end;
procedure TForm1.Edit2Click(Sender: TObject);

begin


if Edit1.Text = '' then else

Button1.Enabled := true;

end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

VAR x:real;

begin

if key=#13 then



begin

try


x:=StrToFloat(Edit1.Text);

except


ShowMessage('Ошибочная запись числа: ' + Edit1.Text);

Edit1.SetFocus;

Exit;

end;


Label2.Visible:=true;

Edit2.Visible:=true;

Form1.ActiveControl := Edit2;

end;


end;
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);

VAR y:real;

begin

if key=#13 then



begin

try


y:=StrToFloat(Edit2.Text);

except


ShowMessage('Ошибочная запись числа: ' + Edit2.Text);

Edit2.SetFocus;

Exit;

end;


Button1.Enabled:=true;

end;


end;
end.
Каталог: uploads -> doc -> 0b41
doc -> Баяндама Тақырыбы: «Қазақтың ұлттық ойындары»
doc -> Сабақтың тақырыбы: Бөлу Сабақтың мақсаты: Білімділік: Рационал сандарды бөлу ережесін есептер шығаруда тиімді
doc -> Сыныптан тыс сағат Тақырыбы : «Наурыз тойы» Ұлттық ойындар №3 9-10-11-сынып
doc -> Сабақтың тақырыбы Ішкі, сыртқы және аралас бездер Жалпы мақсаттары
doc -> Сабақ жоспары Мұғалім: Сабыргалиева Гулсім Сәлімқызы Сынып: 8 " а "
doc -> 1. Хлоропластары көп ұлпа a фотосинтездеуші ұлпа
doc -> ДСҰ- ның Саудадағы техникалық кедергілер жөніндегі комитеті 2015 жылдың 1-30 қараша аралығында жарияланған хабарламалар тізімі
0b41 -> Сабақ№ Сыныбы Күні Тақырыбы: Кіріспе Мақсаты


Достарыңызбен бөлісу:




©stom.tilimen.org 2023
әкімшілігінің қараңыз

    Басты бет