- popíšte dvojkovú, desiatkovú, šestnástkovú číselnú sústavu
- demonštrujte prevody medzi jednotlivými číselnými sústavami
- charakterizujte údajový typ string a char
- popíšte podporné funkcie na podporu práce s textom (length)
- popíšte procedúry na prácu s textom (val)
- vytvorte program podľa zadania
Znakový údajový typ CHAR
Údajový typ CHAR nesie v sebe informáciu o znakoch v ASCII tabuľke, každému znaku prislúcha isté číslo (celé číslo), ktoré mu určuje pozíciu v tabuľke. Obsahuje znaky, číslice a písmená.
Funkcie so znakovým údajovým typom CHAR:
ord(x)=y vracia číslo prislúchajúce znaku X v tabuľke ASCII; y:integer, x:char
chr(x) vracia znak prislúchajúci číslu v ASCII tabuľke
upcase(x) zmení malé písmeno na veľké, plat len pre písmená a..z
Údajový typ String
Jedná sa o postupnosť znakov, jeho maximálna dĺžka je 255 znakov. Nultý znak nesie v sebe informáciu o dĺžke reťazca, je to informácia vo forme znaku, kde číslo priradené znaku v tabuľke ASCII zodpovedá dĺžke príslušného reťazca. V reťazci sa môžeme pohybovať zadávaním pozície (POZOR!!! Nultá pozícia je rezervovaná pre znak určujúci dĺžku reťazca), pr. string[1] – 1. pozícia v reťazci, string[2] – 2. pozícia ..... .
Procedúry a funkcie pre prácu s typom CHAR a STRING
ORD (x)
Funkcia vracia poradové číslo znaku x v ASCII tabuľke.
CHR (x)
Funkcia je opakom funkcie ORD, vracia znak poradového čísla x v ASCII tabuľke.
PRED (x)
Funkcia vracia predchádzajúci znak znaku x v ASCII tabuľke.
SUCC (x)
Funkcia vracia nasledujúci znak znaku x v ASCII tabuľke.
STR (x, s)
Procedúra konvertuje numerickú hodnotu premennej x do reťazca s.
VAL (s, x, kod)
Procedúra konvertuje reťazec s do premennej x, ktorá je numerického typu.
Premenná kod obsahuje nulovú hodnotu, ak operácia bola úspešná, inak ukazuje index znaku, pri ktorom došlo k chybe.
DELETE (s, p, z)
Procedúra odstráni z reťazca s počet znakov z od pozície p.
INSERT (s1, s2, p)
Procedúra vloží reťazec s1 do reťazca s2 na pozíciu p.
COPY (s, p, z)
Funkcia vytvorí podreťazec z reťazca s od pozície p dĺžky z.
LENGTH (s)
Funkcia vracia dĺžku reťazca s.
POS (s1, s2)
Funkcia hľadá reťazec s1 v reťazci s2 a vracia pozíciu, kde reťazec s1 začína.
Ak funkcia v reťazci s2 nenájde reťazec s1, vráti nulovú hodnotu.
Programy - príklad
Napíšte program, ktorý zistí dĺžku reťazca
Length (s: string): Integer;
Zistí koľko znakov obsahuje reťazec.
{ Program vypíše na obrazovku číslo 7 }
var s: string;
Begin
s:='ABCDEFG';
WriteLn('length = ', Length(s));
End.
Napíšte program, ktorý spočíta koľkokrát sa nachádza daný znak v reťazci
public int pocetVyskytov(String s) {
int vysledok = 0;
for (int i=0; i<s.length(); i++) {
if (s.charAt(i) == 'a') {
vysledok++;
}
}
return vysledok;
}
Žiadne komentáre:
Zverejnenie komentára