2.16Мантикий ифодалар ва операциялар
Мантикий (булев) ифодалар( AND, OR, NOT,XOR), курсатгични ташкил этиш операциялари
Мантикий (булев) ифода бажарилгандан кейинги натижа True ёки False булади. Мантикий ифодаларнинг содда куринишлари куйидагича:
мантикий константа;
мантикий узгарувчилар;
мантикий типдаги массив элементлари;
мантикий функция;
муносабат ифодалари.
Колган мантикий ифодалар юкорида санаб утилганларга мантикий операцияларни куллаш ердамида курилади. Мантикий операциялар руйхати 3.3- табл.да келтирилган.
. 3.3-табл. Мантикий операциялар
Операция
|
Амаллар
|
Ифода
|
A
|
B
|
Натижа
|
NOT
AND
OR
XOR
|
Мантикий инкор
Мантикий ВА
Мантикий ЕКИ
ЕКИ ни
бекор килиш
|
not A
A and B
A or B
A xor B
|
True
False
True
True
False
True
True
False
False
True
False
False
|
True
False
False
True
False
True
False
True
True
False
|
False
True
True
False
False
True
True
True
False
False
True
False
|
|
|
|
|
|
|
@ Операцияси
@ операцияси ердамида курсаткични узгарувчига айлантириш мумкин.
3.4 таб.да операнда ва натижа типлари келтирилган.
3.4- табл. Курсаткични ташкил этиш операциялари
Операция
|
Натижа амаллари
|
Операндалар типи
|
Тип
|
@
|
Курсаткични олиш
|
Узгарувчига процедурага еки функция идентификаторига илова
|
Курсаткич (nil га мос)
|
@ операцияси унар операция хисобланади.
2.17Устиворлик операцияси
Операцияларнинг устиворлиги
Хар бир операция унинг устиворлигини хисобга олган холда бажарилади. Устиворлик кийматлари 3.5. таб. да келтирилган.
3.5- табл.Операцияларнинг бажарилиш тартиби.
Операция
|
Усиворлик
|
операция тури
|
@, NOT
|
Биринчи (юкори)
|
операция унар
|
*, /, DIV, MOD,
AND, SHL, SHR
|
Икккинчи
|
купайтирш операцияси
|
+, -, OR, XOR
|
Учинчи
|
кушиш операцияси
|
=, <>, <, >, <=, >=, IN
|
Туртинчи (паст)
|
муносабат операцияси
|
Операцияларнинг тартибини аниклашда 3 хил асосий коидалар мавжуд:
Бир неча операцияларнинг устиворлиги уларнинг юкори боскичидан бошлаб бажарилади.
Бир хил устиворлик операциялари бирин –кетин келса, хисоблаш чапдан унг томонга бажарилади.
Кавс ичига олинган ифодалар энг ичкаридаги кавсдан бошлаб бажарилади.
Назорат саволлари
Дастурнинг асосий характеристикалари нималардан иборат?
Глобал блок деганда нимани тушинасиз?
Дастур структураси кандай куринишга эга?
Метка нима?
Кисм дастури деб кандай дастурга айтилади?
Константалар булими кандай булим?
Берилганлар типини кандай суз ёрдамида эълон килинади?
Процедура ва функция нима?
Библиотека модули деганда нимани тушинасиз?
Библиотека модулининг умумий структураси кандай?
Библиотека модули кандай ташкил килинади?.
.
4 - Маъруза . Турбо-Паскалда содда программалар тузиш. Операторлар.
Режа:
Умумий маълумотлар
К иритиш-чикариш процедуралари
Чикариш форматлари
Энг содда операторлар
Структурали операторлар
2.18Умумий маълумотлар
Берилганларни киритиш-чикариш, Input ва Output олдиндан аникланган файллари.
ЭХМда энг содда масалани ечишда хам киритиш-чикариш амалидан фойдаланилади. Берилганларни киритиш - ташки ташувчидан оператив хотирага кайта ишлаш учун олиб утиш, чикариш-тескари жараен, бунда берилганлар кайта ишлаш. Кейин оператив хотирадан ташки ташувчига олиб утилади. Ташки ташувчи сифатида, киритиш-чикариш юмшок (диск) еки каттик (винчестер) магнит диск ва бошка курилмалар, хизмат килиши мумкин. Паскаль тилида стандарт одам ва ЭХМ уртасидаги мулокат воситаси бу олдиндан аникланган ва файллари хизмат килади. Улар эълон килинмаганда дастур параметрлари булиб хизмат килади. Дастур киритиладиган маълумот файлидан олади ва ишлов берилган натижани файлга езади. Файлига стандарт клавиатура белгиланган, файлга эса - терминал экрани киритиш чикариш процедураси.
Укиш процедураси, езиш процедураси. Киритиш-чикариш амалини бажаришда 4 та процедура ишлатилади:
Берилган мавзуда уларни ишлаш жараени курилади . Клавиатурадан берилганларни киритиш ва экранга чикариш , чоп этиш курилмалари символларни , каторларни ва укиш процедурасида сонли берилганларни киритиш ва навбатдаги дастур билан ишлов беришни таъминлайди.
Ёзилиши:
Read (X1, X2,...,Xn); еки
Read (FV, X1, X2,...,Xn);
бу ерда этилган берилган типлари узгарувчилар файл билан богланган узгарувчи Берилган мавзуда фарматнинг 1 чи варианти киритилади. Уларнинг белгиси минимум 1 пробел оралиги билан клавиатура киритиш ва экранда куринади 1 Read процедурасининг берилганлари киритилгандан кейин Enter босилади Узгарувчиларни белгилари Паскаль тилининг синтаксиси катъий муносабатда киритиш. Агар муносабат бузилса, ( масалан, х1 integer типда, киритганда эса char типи киритилган) киритиш-чикариш хатолари пайдо булади. Хатони эълон килиш куйидаги куринишда булади. Хато коди, бу ерда тушунтириш матни дастурни тухташи сабабини аниклайди.
Мисол.
VAR
I : real;
J : integer;
K : char;
BEGIN
Read (I, J, K);
. . .
Жавобнинг 1 чи варианти.
Биринчи вариант берилганларни тугри киритишни таълим, киритилаетган берилганлари узгартириш типидаги тугри келади. Процедурасидаги 2 чи вариант 10 ули хатони чикаради, узгариш учун Read типни урнига char типи киритилганлиги учун. Агарда дастурда бир нечта Read процедураси булса, берилганлар киритилгандан кейинги Read процедурасининг берилганлари киритилади катор тугагандан сунг кейинги каторга утилади.
Мисол .
VAR
A, B, Sum1 : integer;
C, D, Sum2 : real;
...
BEGIN
Read (A, B);
Sum1 := A + B;
Read (C, D);
Sum2 := C + D;
...
END.
Клавиатурадан куйидагилар киритилади: 18758 34 2.62E-02 1.54E+01.
Хар бир берилганлар жуфтлиги киритилгандан сунг Enter тугмачаси босилади, яъни.
18758 34 Enter 2.62Е-02 1.54Е+01 Enter.
Укиш процедураси Readln худди Read процедурасига ухшайди, битта фаркли томони шуки, Readln процедурасида берилганларнинг 1- катори тугагандан сунг кейинги катор берилганлари укилади. Агар юкоридаги мисолда Read процедурасини Readln процедурасига алмаштирсак :
. . .
Readln (A, B);
Sum1 := A + B;
Readln (C, D);
Sum2 := C + D;
. . .
клавиатурада А ва В ларнинг кийматлари киритилгандан сунг курсор автоматик равишда кейинги каторга утади, бунда C ва D ларнинг кийматлари киритилади:
18758 34 Enter
2.62Е-02 1.54Е+01 Enter
Езиш процедураси Write сонли берилганларни , символларни, каторларни ва булев кийматларини чикаришни таъминлайди.
Формати:
Write (Y1, Y2,...,Yn); еки
Write (FV, Y1, Y2,...,Yn);
Бу ерда Y1, Y2,...,Yn - integer, byte, real, char, boolean
ва хакозо типдаги ифодалар . FV - файл номи, бу ерга чикарилган натижалар езилади. Принтерга чикариш учун FV киймати Lstга тенглаштирнилади. Lst курилмаси ишга тушиши учун албатта USES сузи ердамида Printer модули уланиши шарт .
Мисол.
USES Printer;
VAR
...
BEGIN Write(234); {ифода кийматларда такдим килинган}
Write(A+B-2); {ифоданинг натижаси чикарилади}
Write(Lst, 'хисоблаш натижалари = ', Result1);
END.
Форматнинг биринчи вариантида Y1, Y2,...,Yn ларнинг кийматлари экранга чикарилади, иккинчи вариантда эса чоп этиш курилмасига.
Езиш оператори Writeln худди Write процедурасига ухшайди,лекин руйхат охиридаги жорий процедуранинг киймати чикарилгандан кейин курсор кейинги каторнинг бошига утади. Параметрларсиз езилган Writeln процедураси каторнинг утишига олиб келади.Writeln процедурасини ишлаш жараенини курсатиш учун программанинг кисмини курамиз:
A := 4;
B := 6;
C := 55;
Write(A:3); Write(B:3); Write(C:3);
Sum:= A + B + C;
Writeln('A=', A);
Writeln('B=', B);
Writeln('C=', C);
Writeln(' A+B+C йигиндиси тенг ', Sum);
Натижа:
4 6 55
A=4
B=6
C=55
А+В+С йигиндиси 65 га тенг.
Do'stlaringiz bilan baham: |