CYKLUS S PODMIENKOU NA ZAČIATKU
Príkazy cyklu nám umožňujú predpísať opakovanie príkazov alebo postupností príkazov viackrát. V pascale počet opakovaní predpíšeme( explicitne alebo implicitne) v tvare podmienky. Táto podmienka určuje či má v opakovaní pokračovať alebo ho má ukončiť. Poznáme tri druhy príkazov: while, for a repeat. Pri opakovaní nejakej činnosti nám musí byť jasné, čo sa má opakovať a dokedy sa to bude opakovať. Pri cykle s podmienkou na začiatku sa telo opakuje pokiaľ je splnená podmienka.
While b do p
Telo p sa bude opakovať kým podmienka b typu boolean bude true. Telo cyklu môže obsahovať aj viac príkazov, ktoré je potrebné ohraničiť beginom a endom.
Kým podmienka rob telo
*kým
PRÍKLAD:
Zostavte program, ktorý nájde najmenší spoločný násobok dvoch prirodzených čísel. Program pr7;
uses crt;
var a,b,pom,sucin:integer;nsn:real;
begin
clrscr;
write('Zadaj dve cisla (a>b): ');readln(a,b);
sucin:=a*b;
while b>0 do
begin
pom:=a;
a:=b;
b:=pom mod b;
end;
nsn:=sucin/a;
writeln('NSN tychto cisel je ',nsn:0:0);
readln;
End.
CYKLUS S PODMIENKOU NA KONCI
Viz 5 ot. .Najprv sa vykoná telo cyklu a potom sa testuje, či je podmienka splnená. Pri viacerých príkazoch v tele nie je potrebné použiť begin a end.
Repeat p until b
Repeat a until sú vyhradené slová. Cyklus sa bude opakovať kým b- podmienka, typu boolean, bude false. Akonáhle bude b pravdivé, cyklus skončí. Opakuj telo pokiaľ podmienka
*opakuj
Príkazy s podmienkou na začiatku a na konci sa použijú samozrejme v prípadoch keď nepoznám vopred počet opakovaní. Napr. pri triedení, vyhľadávaní atď.
PRÍKLAD:
Zostavte program, ktorý pomocou Euklidovho algoritmu (pomocou zvyškov ) nájde najväčšieho spoločného deliteľa dvoch prirodzených čísel.
Program pr6;
uses crt;
var a,b,c,d,e:integer;
begin
writeln('Zadaj dve cele cisla (a>b): ');readln(a,b);
d:= a;
e:= b;
repeat
c:= a mod b;
a:= b;
b:= c;
until c=0;
writeln('Najvacsi spolocny delitel cisel ',d,' a ',e,' je ',a);
readln;
End.
CYKLUS SO ZNÁMYM POČTOM OPAKOVANÍ
Viz 5 ot. . Je jasné koľkokrát sa cyklus bude opakovať. Na ohraničenie príkazov v tele je potrebný begin a end. Poznáme dva tvary zápisu.
For R:= Z downto K do p
For R:= K to Z do p
Pre premenná od z po r rob telo
*pre
R je riadiacou premennou a Z,K sú výrazy ordinálneho typu. Downto použijeme keď Z bude väčšie než K. Pri každom opakovaní sa z, či k zväčší alebo zmenší resp.
Zaujímavosti o referátoch
Ďaľšie referáty z kategórie