Ismétlő struktúrák
Ismétlő struktúrák ábrázolása Ha egy adott folyamatot többször is meg kell ismételni, ismétlő struktúrákat vagy más néven ciklusokat használunk. Bármely algoritmusnak véges számú lépés után véget kell érnie, ezért az ismétlő stuktúrának (ciklusnak) tartalmaznia kell egy úgynevezett kilépési feltételt. Kétféle ciklust ismerünk: Előltesztelő ciklus Hátultesztelő ciklus
Előltesztelő ciklus Műveletsor IGEN Feltétel Műveletsor NEM Ameddig a feltétel teljesül ismételjük a műveletsort. Ha a feltétel már a ciklusba lépés előtt nem teljesül, a műveletsort egyszer sem végezzük el.
Feladat: Számítsuk ki valahány téglalap kerülrtét és területét.
Ismétlés: egy téglalap kerületének és területének kiszámítása! START Eredmeny K, T K:= (h+sz)*2 T:= h*sz Adottak h, sz STOP Ismétlés: egy téglalap kerületének és területének kiszámítása!
IGEN NEM Műveletek START Adott válasz válasz=‘igen’ Adottak h, sz Kiszámolod a téglalap kerületét és területét? válasz: igen vagy nem Adott válasz IGEN válasz=‘igen’ Adottak h, sz NEM Műveletek Eredmény K, T Adott válasz STOP Kiszámolod a köv. téglalap kerületét és területét? válasz: igen vagy nem
Fontos! A műveletsorban kötelező módon kell lennie egy olyan műveletnek, amely megváltoztatja a feltételben levő paraméterek értékét !
Így a válasz mindig igen marad, sose fejezzük be a számolást. START Kiszámolod a téglalap kerületét és területét? válasz: igen Adott válasz IGEN válasz=‘igen’ Adottak h, sz NEM Műveletek Eredmény K, T Így a válasz mindig igen marad, sose fejezzük be a számolást. STOP
Feladatok Írjunk folyamatábrát valahány elsőfokú egyismeretlenes egyenlet megoldására. Számoljuk ki valahány kör kerületét és területét. Használjunk folyamatábrát. Számítsuk ki számok összegét. Az összegszámítás akkor álljon le, ha az összeghez hozzáadandó szám értéke 0.
Hátultesztelő ciklus Műveletsor NEM Feltétel IGEN A műveletsort addig ismételjük ameddig a feltétel igazzá nem válik A műveletsort legalább egyszer elvégezzük
Feladat: Számítsuk ki legalább egy vagy több téglalap kerülrtét és területét.
Műveletek NEM IGEN START Adottak h, sz Eredmény K, T Adott válasz Befejezted a kerület és terület számolást? válasz: igen vagy nem Adott válasz NEM válasz=‘nem’ IGEN STOP
Fontos! A műveletsorban kötelező módon kell lennie egy olyan műveletnek, amely megváltoztatja a feltételben levő paraméterek értékét !
Megjegyzés A két bemutatott ismétlő struktúra közös jellemzője, hogy nem tudhatjuk pontosan hányszor fog ismétlődni az adott műveletsor Ha tudjuk, hogy az adott műveletet hányszor kell elvégezni akkor egy módosított elöltesztelő ciklust használunk, ezt számlálós ciklusnak nevezzük
A számlálós ciklus i – ciklusszámláló ké – ciklusszámláló kezdeti értéke vé – ciklusszámláló végső értéke r – a ciklusszámlálót módosító érték (lépés) IGEN i <=vé Műveletek NEM i:= i+r
Feladat: Számítsuk ki pontosan 10 téglalap kerülrtét és területét.
IGEN NEM Műveletek START i=1 i <=10 Adottak h, sz Eredmény K, T STOP
Feladatok Számítsuk ki az első 25 szám összegét. Olvassunk be számokat, addig amíg a beolvasott szám különbözik 0-tól. Írjuk ki közülük hány volt páros és hány páratlan.