Mintegy kiegészítésképpen a matematikai műveletek nagy részét
bemutatnám és az operátorokat sem mellőzném. Az operátorok olyan
szimbólumok, mint a plusz vagy a mínusz jel. Ezek nem csak
szimbólumok, hanem szavak is lehetnek, mint például a div.
Matematikai függvények és
műveletek
ABS
abszolut:=abs(szam); {Az
adott szám abszolút értékét számítja ki.} |
ARCTAN
szog:=arctan(szam); {arctg-t
számol.} |
COS
szam:=cos(szog); {Koszinuszt
számol.} |
DEC
dec(szam); {A szam értéke
csökken eggyel.} |
DEC
dec(szam,ennyivel); {A szam
értéke ennyivel csökken.} |
EXP
szam:=exp(a); {Kiszámítja az
eª műveletet és átadja az értéket szamnak.} |
FRAC
szam2:=frac(szam1); {A szam1
törtrészét adja vissza szam2-be.} |
HI
szam2:=hi(szam1); {Szam1 és
szam2 egész számok. A függvény szam1 legfelső
(legnagyobb helyiértékű) bájtjával tér vissza.} |
INC
inc(szam1); {Szam1 értéke
eggyel nő.} |
INC
inc(szam1,szam2); {Szam1
értéke szam2-vel nő.} |
INT
valos_szam2:=int(valos_szam1);
{A valos_szam2 megkapja valos_szam1
egész részét. Egész számokkal nem működik. Egész számhoz
a TRUNC függvényt (hátrébb) használják.} |
LN
szam2:=ln(szam1);
{Kiszámolja a szam1 természetes alapú logaritmusát.} |
LO
szam2:=lo(szam1); {Egész
számok a szam1 és a szam2. Az alsó (legkisebb
helyiértékű) bájtját adja át a szam2-nek.} |
ODD
logikai:=odd(egesz_szam);
{Logikai típusú az eredmény. Ha a szam páratlan, akkor
az eredmény true, másként false.} |
PI
valos_szam:=pi(); {A valos_szam
felveszi a pi értékét, amilyen pontosan csak lehet.} |
RANDOM, RANDOMIZE
{Véletlenszám generálásra
alkalmas műveletek, amelyek egymás nélkül nincsenek
meg.} randomize;
valos_szam:=random()
{Ha a random szó utáni
zárojelbe nem írunk semmit, akkor a visszatérési érték
egy a [0,1)intervallumba eső valós szám.} |
RANDOM, RANDOMIZE
randomize; egesz_szam2:=random(egesz_szam1);
{Paraméterrel ellátva egész
számot generál [0,egesz_szam) intervallumon. Az egész
szám modulusza nem lehet nagyobb 65536-nál.} |
ROUND
egesz_szam:=round(valos_szam);
{A valos_szam-ot lekerekíti} |
SIN
valos_szam2:=sin(valos_szam1);
{Szinuszt számol.} |
SQR
valos_szam2:=sqr(valos_szam1);
{Négyzetre emel.} |
SQRT
valos_szam:=sqrt(pozitiv_valos_szam);
{Négyzetgyököt von.} |
SWAP
egesz_szam2:=swap(egesz_szam1);
{A két jobboldali bájtot
felcseréli, a többit, ha van, levágja.} |
TRUNC
egesz_szam:=trunc(valos_szam);
{A valos_szam egész részét az
egész_szam kapja meg.} |
Aritmetikai operátorok
Egyoperandusú
operátorok |
+ertek |
Értéke nem változik meg tőle (pl.:
568 értéke 568 marad) |
-ertek |
Az előjelét megváltoztatja (pl.: 578
értéke átalakul -578-cá) |
not(ertek) |
Minden egyes bitjét megváltoztatja.
(pl.: 10010101-ből 01101010 lesz) |
Multiplikatív operátorok |
ertek1*ertek2 |
Beszoroz |
ertek1/ertek2 |
Hányadossal tér vissza, eredménye
valós szám |
ertek1 mod
ertek2 |
Osztási maradékát számolja ki |
ertek1 div
ertek2 |
Maradékos osztást végez |
ertek1 and
ertek2 |
Ha az azonos helyen levő bitek
mindegyike 1, akkor 1 lesz az eredményben is
ugyanott, ha nem akkor, nem. (pl.: 00110011 and
01010101-ből 00010001 lesz) |
ertek1 shl
ertek2 |
Ertek1-nek a bitjeit ertek2-vel
tolja balra. Az üresedő bitek értéke 0 lesz. (pl.: 2
shl 3=16) |
ertek1 shr
ertek2 |
Ertek1 bitjeit ertek2-vel jobbra
tolja. Az üresedő bitek értéke 0 lesz.(pl.: 8 shl
1=4) |
Additív operátorok |
ertek1+ertek2 |
Összeggel tér vissza. |
ertek1-ertek2 |
Különbséggel tér vissza. |
ertek1 or
ertek2 |
A két szám bitjeit összehasonlítva
állítja fel az eredményt. Ha az egyik bit 1, akkor
azon a helyiértéken az eredményben 1-es lesz. |
ertek1 xor
ertek2 |
Kizáró vagy. A két szám bitjeit
összehasonlítva állítja fel az eredményt. Ha az
egyik bit 1, akkor azon a helyiértéken az
eredményben 1-es lesz, ha mind a kettő 1, akkor 0. |
Ennyi tudással már eléggé sok mindent ki lehet számolni,
de nem árt gyakorolni.
|