- vysvetlite pojem cyklus, popíšte jednotlivé typy cyklov
- popíšte syntax a realizáciu cyklu so známym počtom opakovaní
- popíšte syntax a realizáciu cyklu s podmienkou na začiatku
- popíšte syntax a realizáciu cyklu s podmienkou na konci
- nakreslite vývojové diagramy jednotlivých cyklov
- vytvorte program podľa zadania
Cyklus - umožňuje opakovať určité činnosti. Je potrebné špecifikovať čo sa má opakovať a dokedy sa má opakovať. Cyklus sa skladá z tela cyklu, t.j. činnosti, ktorá sa má opakovať a z podmienky, ktorá určuje, dokedy sa má telo cyklu opakovať.
Rozdelenie cyklov
- cyklus so známym počtom opakovaní
- cyklus s podmienkou na začiatku
- cyklus s podmienkou na konci
Cyklus so známym počtom opakovaní
Počet opakovaní tela cyklu je známy už pred jeho začatím a vykonávanie operácií v tele cyklu nemá žiadny vplyv na počet opakovaní.
FOR i:=1 TO N DO príkaz;
{opakuje sa N-krát, hodnota i narastá od 1 (ZH) do N (KH):}
FOR i:=N DOWNTO 1 DO príkaz;
{opakuje sa N-krát, hodnota i klesá od N do 1:}
FOR i:=1 TO 5 DO
begin
FOR j:=1 to 3 DO
begin
write(j:5);
end;
writeln;
end;
{cyklus v cykle: vonkajší cyklus (s riadiacou premennou I) zaistí
5-násobné opakovanie vnútorného cyklu (s riadiacou premennou J),
ktorý sa opakuje 3-krát:}
Cyklus s podmienkou na začiatku
Na začiatku cyklu je podmienka, ktorá určuje, či sa telo cyklu bude vykonávať. Telo sa vykonáva dovtedy, kým je podmienka splnená. Ak podmienka nie je splnená, vykonávanie cyklu sa ukončí. Telo cyklu sa nemusí vykonať ani raz, ak podmienka nie je splnená hneď na začiatku.
WHILE podmienka DO {začiatok cyklu}
begin
príkaz1; {telo cyklu}
príkaz2;
...
príkazN;
end; {koniec cyklu}
Cyklus s podmienkou na konci
Najprv sa vykoná telo cyklu a potom sa testuje podmienka. To znamená, že telo cyklu sa musí aspoň raz vykonať. Ak je podmienka splnená, cyklus sa ukončí, ak nie je, cyklus sa opakuje.
REPEAT {začiatok cyklu}
príkaz1; {telo cyklu}
príkaz2;
...
príkazN;
UNTIL podmienka;{koniec cyklu}
Príklad PROGRAM
Vytvorte program, ktorý vypočíta súčet N čísel, pričom počet N čísel zadá užívateľ programu.
Var sucet,i: integer;
Begin
sucet:=0;
Writeln('Zadaj cislo N:');
Readln (n);
For i:=1 to n do sucet:=sucet+i;
Writeln('Sucet ',n,' cisel je: ',sucet);
Readln;
End.
Žiadne komentáre:
Zverejnenie komentára