ART6 (13)









Oper






Opis pozostałych operatorów

Opisywano już dwukrotnie na łamach VBM operatory logiczne takie jak And, Or,
Not. Jednakże operatorów takich jest znacznie więcej. Może niektórych to nudzi, lecz
wbrew temu co napisał Jelcyn, ja uważam, że często przydadzą się w banalnych
sprawach. Przykładowo nasz program ma pokazać nam resztę z mnożenia, i co? Zamiast
pisać bajeranckie gigantycznie procedury można to wszystko zmieścić w jednej linijce
stosując jeden operator!

 

Do opisania z operatorów logicznych zostały nam: Xor, Eqv, Imp. Wszystkie
opisane wcześniej operatory są podstawowymi, a w/w są nieco przekształconymi ich
wersjami - to znaczy tylko w niektórych przypadkach zachowują się inaczej. Ciekawym
operatorem jest także Mod, który nie należy do operatorów logicznych, lecz do
arytmetycznych.

XOR
Jak sama nazwa wskazuje jest to operator potomny od operatora Or. Jest to logiczna
ekskluzja dwóch wyrażeń (z ang. logical exclusion on two expressions).
O ile w przypadku dwóch wartości prawdy, operator Or zwracał prawdę, to Xor w tym
przypadku zwraca fałsz. Poza tym wszystkie inne warianty są takie same.

a = b Xor c

 

 




b
c
a


1
1
0


1
0
1


0
1
1


0
0
0





EQV
Ten operator, poza ładną, jakby z łaciny - notacją, jest podobny do poznanego już
operatora And. Jest to logiczny ekwiwalent dwóch wyrażeń (z ang. logical equivalence on
two expressions). Tutaj, różnicą między Eqv a And, jest to, że w przypadku dwóch
wyrażeń fałszu, operator Or zwracał fałsz, a Eqv zwróci nam prawdę; poza tą
różnicą wszystkie inne możliwości są takie same w obydwu operatorach.

a = b Eqv c






b
c
a


1
1
1


1
0
0


0
1
0


0
0
1




 

IMP
To następny operator o ładnej nazwie, będąc jednocześnie zupełnie dziwnym
tworem. Definicja tego tworu to: logiczna implikacja dwóch wyrażeń (z ang. logical
implication on two expressions). Tutaj ciekawą rzeczą jest możliwość zastosowania
literału Null.
Wyniki zastosowania tego operatora są często zaskakujące, lecz ciekawe. Na razie nie
znalazłem jakiegoś praktycznego jego zastosowania :(

a = b Imp c





b
c
a


1
1
1


1
0
0


1
null
null


0
1
1


0
0
1


0
null
1


null
1
1


null
0
null


null
null
null




MOD

Jest to operator nie logiczny lecz arytmetyczny i często może się przydać.
Zwraca on resztę z dzielenia liczby przed nim przez liczbę za nim.

a = b Mod c

 

Przykładowo, jeśli b = 5, c = 4
to a = 1, bo 5:4=1 reszty 1, inny przykład:  b = 19, c = 6, wtedy a = 1, bo 19:6=3
reszty 1. Proste, prawda?


Jak widać, operatorów jest sporo, tylko nie zawsze są one stosowane, jednakże ich
znajomość na pewno się przyda, powodzenia!

Marcin Porębski ( Doogie )
marcin.porebski@interia.pl







Wyszukiwarka

Podobne podstrony:
UAS 13 zao
er4p2 5 13
Budownictwo Ogolne II zaoczne wyklad 13 ppoz
ch04 (13)
model ekonometryczny zatrudnienie (13 stron)
Logistyka (13 stron)
Stereochemia 13
kol zal sem2 EiT 13 2014
EZNiOS Log 13 w7 zasoby

więcej podobnych podstron