IF B THEN A1 ELSE A2
Танлаш операторининг қуйидаги қурилишига эквивалентдир:
CASE B OF TRUE: А1 FALSE:A2; END;
қисқа кўринишдаги шартли ўтиш операторининг қуйидаги
IF B THEN A кўриниши танлаш операторининг қуйидаги кўринишига эквивалентдир.
CASE B OF TRUE: А FALSE:
END
Мисол учун CASE Т OF ‘*’,’/’:R:=1
‘+’,’-‘:R:=2 END
Бу операторнинг бажарилиши натижасида, агар Т белгили ўзгарувчи
«+» ёки «-« белги қийматларни қабул қилса R ўзгарувчи 2 қийматни, агар Т - ўзгарувчи «*» ёки «/» белгини қабул қилса R ўзгарувчи 1 қийматни қабул қилади.
Мисол:
Ах2+bx+с=0 квадрат тенгламанинг илдизларини топиш дастури тузилсин.
Program ildiz; Label 20;
Var A,B,C,D,E,F,X,X1,X2,Z:Real;
Begin
Read (A,B,C);
If A =0 Then Begin X:=-B/C; Writeln (x); Goto 20 End Else Begin D:=B*B-4.0*A*C
Z:=2.0*A;
E:=-B/Z;
F:=sqrt(ABS(d))/Z end;
If D>=0 Then Begin X1:=E+F; X2:=E-F;
Writeln (x1,x2);end;
Else If D=0 Then Begin X:=E; Writeln(x) End Else Writeln (ечим йўқ)
20: End/
Программа тузиш усуллари.
Программа тузишнинг қандай асосий усулларини биласиз ва улар бир- биридан нимаси билан фарқ қилади? Кичик хажмдаги программалар тузишда қандай усулларини ва катта программаларни тузишда қандай усулларни ишлатган маъқул ва нима учун? Қандай қилиб программа тузиш ва уни созлаш жараёнини тезлаштириш мумкин? Нега реал хаётда кўпроқ модулли ва структуравий усуллар кўпроқ ишлатилади?
Машина тушунадиган кўринишда ёзилган алгоритм “масалани ечиш программаси” деб аталади. Программа алоҳида ва аниқ командаларни билдирадиган қаторлар кўринишида тузилиб, бажарилиши лозим бўлган амаллар кетма-кетлигини билдиради ва бу тайёр программа ЭҲМ хотирасига киритилади.
Шуни айтиш керакки, ҳар қандай программа бирор программалаш тилида бажарилади. Одатда программалаш тилини “алгоритмик тил” деб аташ қабул қилинган. Уларга юқорида кўриб ўтганимиздек Фортран, Кобол, Алгол, Ассемблер, Паскаль, Бейсик тилларини мисол қилиш мумкин.
Барча программалар, уларни тайёрлашнинг қандай босқичидалигига қараб, тегишли кутубхонада сақланиши мумкин. Программали модулнинг ҳар бир типи ўз кутубхонасига, яъни: дастлабки модуллар кутубхонасига, объектли модуллар кутубхонасига ва ниҳоят юкловчи модуллар кутубхонасига эга.
Программа ЭҲМ-га киритилгандан кейин программалашнинг кириш тилида тузилган дастлабки программали модули ҳосил бўлади. Бу модуль программа-транслятор ёрдамида объектли модулга ўзгартирилади. Объектли модулда программалаш тилининг ўзига хос хусусияти йўқолади. Бироқ бу хали иш (машина) программаси эмас. Объектли модуль программа ёзувининг қандайдир оралиқ кўринишидир.
ЭҲМ-да бевосита бажарилиши учун объектли модуль таҳрир босқичидан ўтиши керак; шундан кейин абсолют модуль бўлади. Шу мақсадда сервис программаси қўлланилади. У программаларга уларни такрорий трансляция қилмасдан зарур ўзгартишлар киритади ва бажаришга тайёр программа фазалари кўринишидаги абсолют модулларни ҳосил қилади. Абсолют модуль ички машина тилида берилади.
Абсолют модуль тушунчаси билан бир қаторда юкловчи модуль тушунчаси ҳам қўлланилади. У оператив хотирага операцион системанинг бошқарувчи программалари комплексига кирувчи ЮКЛОВЧИ (загрузчик)программа билан киритилади.
Операцион системанинг барча кутубхоналарига хизмат кўрсатиш учун махсус сервис программалар УТИЛИТЛАР қўлланилади. Бу программа кутубхоналарни яратади ва уларга тузатишлар киритади, уларнинг мазмуни ва мундарижасини акс эттиради.
Программа тузишнинг қуйидаги асосий усуллари мавжуд:
Юқоридан пастга, узлуксиз программа тузиш;
Тармоқланган кўринишда мураккаб программалар тузиш
Модулли усулда катта хажмдаги мураккаб программалар тузиш;
Программа тузишнинг структуравий усули.
Юқорида кўриб ўтилган тиллар ичидан Паскал, СИ ва Пролог тиллари модулли ва структуравий программалаштиришни амалга оширишда жуда хам қулай.
Do'stlaringiz bilan baham: |