====== Különbségek ====== A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Előző változat mindkét oldalon Előző változat Következő változat | Előző változat | ||
programozas_alapok [2015/11/30 18:19] bucsupe [Iteráció] |
programozas_alapok [2015/11/30 18:27] (aktuális) |
||
---|---|---|---|
Sor 101: | Sor 101: | ||
Háromféle ciklusszervező szerkezet van, melyet sorban végignézünk. | Háromféle ciklusszervező szerkezet van, melyet sorban végignézünk. | ||
- | ==== Elöl tesztelő ciklus ==== | + | ==== Elől tesztelő ciklus ==== |
A leggyakoribb és legáltalánosabb ciklusszerkezeta az elöltesztelő ciklus. Ebben az esetben először a ciklusfejben megadott feltétel kiértékelődik, majd ha ez igaz akkor végrehajtódik a ciklus mag. Ezek a lépések addig ismétlődnek amig a ciklusfejben lévő kifejezés igaz. Ha hamis, akkor vége a ciklusnak és a program végrehajtása a ciklust lezáró utasítás után folytatódik. | A leggyakoribb és legáltalánosabb ciklusszerkezeta az elöltesztelő ciklus. Ebben az esetben először a ciklusfejben megadott feltétel kiértékelődik, majd ha ez igaz akkor végrehajtódik a ciklus mag. Ezek a lépések addig ismétlődnek amig a ciklusfejben lévő kifejezés igaz. Ha hamis, akkor vége a ciklusnak és a program végrehajtása a ciklust lezáró utasítás után folytatódik. | ||
Sor 148: | Sor 148: | ||
</code> | </code> | ||
+ | |||
+ | ==== Növekményes ciklus ==== | ||
+ | A harmadik ciklusszervező lehetőség, melyet általában minden nyelv megvalósít arra ad lehetőséget, hogy adott számszor hajtsunk végre egy utasítássorozatot. Én azt szoktam mondani ha tudjuk hogy hányszor kell végrehajtani valamit akkor a növekményes ciklust használjuk, ellenkező esetben az előző kettő típus valamelyikét. Egyszóval a példaként használt számkiíró programo tipikusan növekményes ciklussal szokás programozni. | ||
+ | |||
+ | <code> | ||
+ | VARIABLES | ||
+ | INTEGER a; | ||
+ | ENDVAR; | ||
+ | |||
+ | PROGRAM | ||
+ | |||
+ | FOR a=1 TO 100 | ||
+ | OUTPUT: a; | ||
+ | NEXT | ||
+ | | ||
+ | OUTPUT: "Vége a programnak"; | ||
+ | | ||
+ | ENDPROG | ||
+ | </code> | ||
+ | |||
+ | Vegyük észre hogy ebben a ciklusban nem kellett az a változónak értéket adni a ciklus előtt, és a ciklus magban sincs utasítás amivel növeljük a változó értékét. Ugyanis aciklus fejben szerepel a változó és éppen arról szól ez a ciklus hogy a változónk sorra felveszi az értékeket a megadott intervallumban. | ||
+ | |||