Логикалық операциялар boolean типіндегі мəндермен орындалады. Егер логикалық операцияларда операндтар ре-тінде қатынас операциясы қарастырылса, олардың приоритеті төмен болғандықтан, жақшалар қолданылуы керек. Мысалы, х [а, b] интервалына кіретінін анықтағанда, ақиқаттық мəні қол-данылатын логикалық өрнек былай болып жазылуы тиіс:
(x >= a) and (x <=b.
Разрядтары бойынша атқарылатын логикалық операция-лар мен ығыстыру операциялары бүтін сандармен орында-лады. Алынатын нəтижесі де бүтін сан болады. Ал ығыстыру операциясының екінші операнды биттер түрінде берілген бірінші операндты неше разрядқа ығыстыру керек екендігін анықтайды :
5 shl 4 – екілік биттер түрінде бейнеленген 5 саны (00000101) солға қарай 4 разрядқа ығыстырылады да (01010000), ол сол санды 24=16-ға көбейткенге сəйкес келіп, нəтижесі – 80 болып шығады (010100002 = 26+24 =80).
Қалған операциялар соларға арналған тарауларда қарастырыл-ған.
Сонымен меншіктеу операторы айнымалылардың мəнін өз-гертеді екен. Бұл оператор орындалуы барысында меншіктеу белгісінен оң жақта тұрған өрнек мəні есептеліп, оның нəтижесі сол жақтағы айнымалы мəні болып саналады. Оператор соңына нүктелі үтір қойылады. Мысалы:
Var a, b, c:real; Begin...
c:=(a*a-sin(b))/(a+25.1);...
Var v:boolean; a:integer; b:real; Begin
66
a:=8; b:=1.5;
v:=(a>5)and(b>=8); {v false мəнін
қабылдайды}
...
Меншіктеу операциясының нəтижесі дұрыс болуы үшін, оның құрамындағы өрнек пен айнымалы бірдей типте немесе бір-біріне түрлендірілетін сəйкес типтерде болуы керек.
Сəйкес келетін типтерге мыналар жатады:
барлық бүтін сандар типтері;
барлық нақты сандар типтері;
белгілі бір негізгі (базалық) типке кіретін кесінді мен базалық тип;
бір базалық тип кесінділері;
символ жəне сөз тіркесі.
Меншіктеу операциясының сол жағы мен оң жағында орналас-қан мəндер типі əр түрлі болса, өрнек нəтижесі айнымалы типіне келтіріледі. Мысалы:
Var
L:longint; {айнымалы типі longint}
E,x:extended; {айнымалылар типтері extended}
I:integer; {айнымалы типі integer}
R:real; {айнымалы типі real}
Begin...
R:=I*E/(x+L);... {оң жақтағы өрнек нəтижесінің типі – extended, бірақ R айнымалысы типі – real, сондықтан өрнек мəні де осы типке түрленеді}
End.
Егер меншіктеу операциясының сол жағы мен оң жағында орналасқан мəндер типі бір біріне сəйкес келмесе, онда оларды тікелей түрлендіру керек.
Тікелей түрлендіру төмендегі арнайы функциялар арқылы орындалады:
Достарыңызбен бөлісу: |