P2 Premenné, konštanty, priradenie, náhodné hodnoty

Deklarácia premenných

  • začína kľúčovým slovom var
  • pozostáva z vymenovania identifikátorov (mien) premenných (oddelené čierkou) a určenia ich typu
  • deklaráciou sa nájde v operačnej pamäti miesto pre premennú a toto miesto sa po dobu vykonávania programu bude volať identifikátorom premennej.

Napr.::
var a,b,c:integer;
    znak:char;

 

Typ premennej Rozsah Veľkosť bit Veľkosť bajt
Shortint -128..127 8 bitov 1 bajt
Integer -32768..32767 16 bitov 2 bajty
Longint -2147483648..2147483647 32 bitov 4 bajty
Byte 0..255 8 bitov 1 bajt
Word 0..65535 16 bitov 2 bajty
Real 2.9e-39..1.7e38   6 bajtov
Boolean True/False 1 bit  
Char 1 znak ASCII   1 bajt
String 255 znakov ASCII   0-255 bajtov

Deklarácia konštanty:

const palec=2.54

Operácie nad ordinálnymi údajovými typmi (celé č., znaky, boolean):

  • predchodca:pred(p)
  • následník:succ(p)
  • ordinálna hodnota: ord(p)
  • zvýšenie ordin.hodnoty o 1: inc(p)
  • zníženie ordin.hodnoty o 1:  dec(p)

Operácie nad logickým údajovým typom:

  • logická negácia:not
  • logický súčin:and
  • logický súčet: or

Operácie s celočíselnými údajovými typmi:

  • sčítanie: +
  • odčítanie: -
  • násobenie: *
  • celočíselné delenie: div
  • zvyšok po delení: mod
  • absolútna hodnota: abs(p)
  • druhá mocnina: sqr(p)

Operácie s racionálnymi údajovými typm (des.číslo zapisujeme s bodkou miesto čiarky)i:

  • sčítanie: +
  • odčítanie: -
  • násobenie: *
  • delenie: /
  • absolútna hodnota: abs(p)
  • druhá mocnina: sqr(p)
  • druhá odmocnina: sqrt(p)
  • celá časť racionálneho čísla: trunc(p)
  • zaokrúhlenie racionálneho čísla na celé: round(p)

Priorita operátorov:

  1. not
  2. *, /, div, mod, and
  3. +, –, or, xor
  4. <, <=, =, <>, >=, >

Priradenie:

premenna := vyraz;
napr.: obvod := 4*a;

Výpis premennej resp. výsledku na výstupe na pevný počet miest:

  • premenná a typu integer, výpis na 5 miest
    • write(a:5);
  • premenná b typu real, výpis na 7 miest, z toho 2 miesta na desatinnú časť čísla:
    • write(b:7:2)

Náhodné hodnoty:

Pod náhodnou hodnotou rozumieme náhodne vybraté číslo z nejakej konečnej množiny čísel. Inak povedané, máme vo vrecúšku 101 hlinených guliek a na každej guľke je napísané jedno celé číslo od 0 do 100. Ak z vrecúška vyberiem ľubovoľnú guľku, tak vlastne vyberiem náhodné číslo – hodnotu. Aby sme naozaj vybrali náhodnú guľku, musíme pred výberom guľky potriasť s vrecúškom – guľky premiešať. V Pascale to funguje presne tak isto.

Na premiešanie čísel slúži procedúra randomize; a na výber náhodného celého čísla z intervalu <0, n-1> slúži funkcia random(n);

Napr.:
randomize;
a:=random(10); do premennej a bude náhodne vybraté číslo od 0 po 9, ak chceme napr čísla od 1 po 9, tak bude príkaz priradenia nasledovný:
a:=random(9)+1;

Pomôcka pri tvorbe náhodných čísel:
random(počet hodnôt) * rozdiel medzi hodnotami + najmenšia hodnota

Nezabudnime ale predtým v hlavičke programu napísať uses crt (vysvetlené v P5)

 

Príklady:

  1. Napíšte program na výpočet obvodu a obsahu:
    1. štvorca
    2. obdĺžnika
    3. kruhu (polomer bude konštanta)
  2. Napíšte program na výpočet objemu a povrchu:
    1. kocky
    2. kvádra
    3. gule
    4. valca (polomer bude konštanta)
  3. Napíšte program, ktorý načíta od používateľa dve čísla a vypíše na obrazovku ich súčet, rozdiel, súčin a podiel, celočíselný podiel a zvyšok po celočíselnom delení. Ako sa prejaví, že zadané čísla budú typu integer alebo real?
  4. Zostavte program, ktorý načíta ceny troch druhov tovaru bez DPH a vypíše ich ceny s DPH. Program overte pre výšku DPH 20% (konštanta).
  5. Napíšte program, ktorý načíta čas v hodinách, minútach a sekundách a premení ho na sekundy
  6. Napíšte program, ktorý načíta čas v sekundách, premení ho na čas udaný v hodinách, minútach a sekundách. Výsledok vypíše v tvare napr.: 3660 sekúnd = 1 hodina 1 minúta 0 sekúnd.
  7. Napíšte program, ktorý pre danú sumu navrhne počet potrebných bankoviek v nominálnej hodnote 200, 100, 50, 20, 10 a 5 € a mincí v hodnote 2,1 €.
  8. Napíšte program, ktorý z 9-miestneho rodného čísla určí deň narodenia (napr.: vstup RC: 990523778, vystup: 23)
  9. Vytvorte program na výpočet objemu ihlana, základňou ktorého je trojuholník. Pre výpočet plochy základne použite Herónov vzorec.
  10. Napíšte program, ktorý bude generovať náhodne hodnoty pri hode kockou tj čísla od 1 po 6
  11. Napíšte program, ktorý náhodne vylosuje prirodzené číslo z intervalu <51,100>
  12. Napíšte program, ktorý náhodne vygeneruje párne prirodznené číslo do 50 tj  z intervalu<2,4,6,8,10, --, 50>
  13. Napíšte program, ktorý vygeneruje náhodne 4-miestny PIN kód