Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМКД_ПЭВМ_2ИКО_Урдабаева+++.docx
Скачиваний:
134
Добавлен:
01.03.2016
Размер:
833.23 Кб
Скачать

№1.2 Практикалық сабақ

Тақырыбы: Тармақталу алгоритмдерін бағдарламалау.

Мақсаты: ауыстырғыштарды ұйымдастырудың қарапайым компонеттерін (TСheckBox, TRadioGroup) қолдануды үйрену. Тармақталу алгоритмінің бағдарламасын құру және өңдеу.

Қажетті құралдар мен материалдар: ДК, Delphi ортасы.

Мазмұны мен жұмысты орындау реті:

1. Теориялық материалды қайталау.

2.1. Паскаль тілінің if және case операторлары

Тармақталу алгоритмдерін бағдарламалау үшін Pascal тілінде екі мән қабылдай алатын - true және false (ия, жоқ) boolean типті арнайы айнымалылар, және if пен case операторлары қолданылады. if операторы логикалық өрнектің нәтижесін немесе boolean типті айнымалының мәнін тексереді, және есептелудің тармақталуын ұйымдастырады.

Мысалы, егер bl: boolean, x,y,u:integer, онда if операторы қолданылған бағдарлама үзіндісі мына түрде болады:

bl:=x>y;

if bl then u:=x-y;

else u:=x-y;

case таңдау операторы саналымды типті қандай да бір айнымалының мәніне байланысты тармақталуларды ұйымдастырады.

Мысалы, егер In: integer, онда:

case in of

0: u:=x+y;

1: u:=x-y;

2: u:=x•y;

else u=0;

end;

in мәніне байланысты u есептеледі. Егер in=0, онда u=x+y, егер in=1, онда u=x-y, егер in=2, онда u=x*y және, соңында, in айнымалысының 0, 1 немесе 2 мәндерінен басқа мәндерде u=0.

2.2. Delphi-дегі ауыстырғыш-батырмалар

DELPHI-де тармақталуларды ұйымдастыру үшін ауыстырғыш-батырмалар түріндегі компоненттер қолданылады. Ондай батырманың күйі (қосылған - ажыратылған) визуальді түрде формада бейнеленеді. 2.1-суреттегі формада ауыстырғаш-батырмалардың екі түрі көрсетілген (TCheckBox, TRadioGroup ).

TCheckBox компоненті тәуелсіз ауыстырғыш-батырманы бейнелейді, қолданушы ол арқылы өз шешімін ия/жоқ түрінде көрсете алады. Бағдарламада батырма күйі if операторының көмегімен тексерілетін бульдік айнымалы мәнімен байланысты.

TRadiogroup компоненті тәуелді ауыстырғыш-батырмалар тобын бейнелейді. Бір батырманы басқанда, қалғандары ажыратылады. Бағдарламаға case операторының көмегімен талдалынатын қосылған батырма номері (0,1,2,..) беріледі.

2.3. Бағдарлама жазудың мысалы

Тапсырма: Үш санды енгізіңіз - x,y,z. Қалауыңыз бойынша u=sin(x) немесе u=cos(x), немесе u=tg(x) функцияларын есптеңіз және үш санның ең үлкенін табыңыз: max(u,y,z) немесе max (|u|,|y|,|z|).

2.3.1. Форманы құру

TEdit терезелерінің мәтінін және орналаусын реттей отырып, бірінші тапсырмадағыдай форма құрыңыз.

2.3.2. TСheckBox компонентімен жұмыс жасау

Standard компоненттер мәзірінен белгісін таңдаңыз және форманың қажетті жеріне орналастырыңыз. Объектілер инспекторының көмегімен тақырыбын (Caption) “maxabs” деп өзгертіңіз. Бағдарлама мәтінінде TСheckBox типті CheckBox1 айнымалысы пайда болады. Батрманың басылғанына не басылмағанына байланыстыCheckBox1.Checked бульдік айнымалысы true немесе false мәнін қабылдайды.

2.3.3. TRadioGroup компонентімен жұмыс жасау

Standard компоненттер мәзірінен белгісін таңдаңыз және форманың қажетті жеріне орналастырыңыз. Формада RadioGroup1 тақырыпты түзу сызықпен сызылған тіктөртбұрыш пайда болады. Тақырыбын (Caption) U(x) деп өзгертіңіз. Компонентте батырмалар орналастыру үшін Columns қасиетін 1-ге тең (батырмалар бір бағанға орналастырылады) етіп тағайындау керек. Items қасиетінің оң жағын екі рет тышқанмен шертіңіз, батырмалардың тақырыптар тізімінің жолдық редакторы пайда болады. Үш жолды теріңіз: бірінші жолда - cos(x), екінші жолда - sin(x), үшінші жолда - tg(x), сосын ОК батырмасын басыңыз.

Сол кезде тіктөртбұрыштың ішінде үш ауыстырғыш-батырма пайда болады.

Бағдарлама мәтінінде TRadioGroup типті RadioGroup1 айнымалысы пайда болғанына назар аударыңыз. Енді топтың бір батырмасын басқан кезде бүтін типті RadioGroup1.ItemIndex айнымалысына басылған батырма номері (нольден бастап есептеледі) жазылады.