«Объектга йўналтирилган дастурлаш тиллари» ни ўрганишда интерактив ўқитиш услубиёти
-кейс. Талабалар олдига қуйидаги таянч муаммолар қўйилади
Download 1.85 Mb.
|
delphi CASE1
2-кейс. Талабалар олдига қуйидаги таянч муаммолар қўйилади.
X, Y хақиқий сонлар берилган улар устида турли арифметик амаллар бажариш дастури ва лойихаси яратилсин. Таянч муаммо. X, Y хақиқий сонлар ўртасида ихтиёрий амалларни бажариш дастури ва лойихаси тузилсин, шундай лойиха ва дастур тузилсинки, фойдаланувчи амаллар рўйхатидан ихтиёрий бирини, бир нечасини ёки барчасини танлаш ва тармоқланувчи дастурнинг ўзига хос усулини яратиш талаб этилсин. Қўйилган муаммонинг лойихаси ва дастури қуйидагича бўлади. var x,y,z:real; Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin x:=strtofloat(edit1.Text); y:=strtofloat(edit2.Text); if checkbox1.Checked then begin z:=x+y; edit1.Text:=floattostr(z); end; if checkbox2.Checked then begin z:=x-y; edit1.Text:=floattostr(z); end; if checkbox3.Checked then begin z:=x*y; edit1.Text:=floattostr(z); end; if checkbox4.Checked then begin z:=x/y; edit1.Text:=floattostr(z); end; end; т аянч муаммо. Масаланинг қўйилиши юқоридаги каби сақланиб қолади. Аммо, танланган амллардан фақат биттасини бажариш лойиҳаси ва дастурини тузиш талаб этилади. Бу ерда checkbox объектдан фойдаланилмайди. Кичик гуруҳ талабалари Delphi нинг имкониятларидан келиб чиқиб, radiogroup объект иштирокидаги лойиҳа ва дастурдан фойдаланишни тавсия этадилар. Одатдагидек, Form1 га Standart компонентлар соҳасидан radiogroup объект жойланади ва унинг хусусиятларини фойдаланувчи томонидан ўзгартирилади. Масалан, items ҳусусияти танланиб бажариладиган амаллар рўйхати клавиатура орқали киритилади. Caption ҳусусияти амаллар жумласи билан алмаштирилади. Radiogroup иштирокидаги масала шартига мувофиқ дастур ва лойиҳа қуйидагича бўлади var x,y,c:real; Form1: TForm1; implementation {$R *.dfm} рrocedure TForm1.Button1Click(Sender: TObject); begin x:=strtofloat(edit1.Text); y:=strtofloat(edit2.Text); case radiogroup1.ItemIndex of 0:c:=x+y; 1:c:=x-y; 2:c:=x*y; 3:c:=x/y; end; memo1.Lines.Add(floattostr(c)); end; end. Гурух аъзолари муаммоларда қўлланилган checkbox, radiogroup объектларнинг ўзига хос фарқлари ва уларни тадбиқ этиш мазмунлари хақида батафсил маълумотларни асослаб берадилар. var x,y,c:real; Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin x:=strtofloat(edit1.Text); y:=strtofloat(edit2.Text); case listbox1.ItemIndex of 0:c:=x+y; 1:c:=x-y; 2:c:=x*y; 3:c:=x/y; end; memo1.Lines.Add(floattostr(c)); end; end. Кейс Талабалар олдига программавий муаммо қўйилади. Юқоридаги дастурларда танланган объектдаги содир бўладиган ходиса дастурлари баён қилинган. Стандарт усулдаги дастурдан воз кечилгандаги муаммоларни ҳал қилиш масаласи қўйилади.бу ерда ҳам бир қанча муаммолардан иборат бўлиши мумкин. Процедура усули : Функция процедура усули. Процедура ва функция- процедура усули илгари Pascal тилида ўрганганликлари учун улар маънога эгадир. Гурух аъзолари процедура ва функция – процедураларнинг ўзига хос хусусиятлари ва фарқларини тахлил қилиб берадилар. Формал ва фактик параметрларнинг маъноларини ва вазифаларини тўлиқ тушунтириб берадилар. Дастур структурасидаги таркибий элементларни изоҳлаб берадилар. Тармоқланувчи дастурнинг процедура орқали ифодаси қуйидагича. var x,y,z:real; Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); procedure tarmoq(a,b:real); var z:real; begin if a>b then z:=a else z:=b; memo1.Lines.Add(floattostr(z)); end; begin x:=strtofloat(edit1.Text); y:=strtofloat(edit2.Text); tarmoq(x,y); end; end. Гурух аъзолари дастурнинг маъносини тушунтириб берадилар. Процедура дастур структураси хам асосий дастур структураси каби бўлади. Процедура дастурнинг бошланғич қисмида жойлашади. Фактик параметрга мос процедура бажарилади. Асосий программадан хохлаган марта процедурага мурожаат этиш мумкин бўлади. 2.4 “ Объектга йўналтирилган дастурлаш тиллари” ўқув курсидан “Файллар” мавзусидаги Case study Download 1.85 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling