Skip to: site menu | section menu | main content
Az algoritmus szó eredete a koraközépkori arab matematikáig nyúlik vissza. Muhammad Ibn Músza Al-Hvarizmi csillagász, matematikus Kr.e. a IX. században élt a mai Üzbegisztán területén. A De Numero Indorum (A hindu számokról) című könyvén a pontatlan latin fordítás következtében neve Algorithmus-ra változott.
Ma az algoritmus szó nem a könyv írójának nevét idézi, hanem így hívnak minden, valamely módon és sorrendben végrehajtandó számolási eljárást a matematikában.
A folyamatábra segítségével a program folyamatát részletesen ábrázolni tudjuk.
Minden folyamatábra egy START szimbólumot tartalmaz. A START a kezdőszimbólum, ebből pontosan egy van minden folyamatábrában. | |
A STOP a folyamatábra záró szimbóluma. Ebből elvileg csak egy van, de többet is lehet használni. | |
Az értékadás szimbóluma. | |
Ki: output. A megadott kifejezés eredménye kiíródik a képernyőre. | |
Be: input. A megadott változók értékeit a program sorban bekéri a billentyűzetről. | |
Feltételes elágazás. Ha a megadott feltétel igaz, akkor az IGAZ ágon kell továbbhaladni. Ha a feltétel hamis, akkor a HAMIS ágon. Mindig két ág van. A rombusz belsejébe egy egyértelműen eldönthető logikai kifejezést kell írni. | |
Számlálós ciklus. A ciklusváltozó (i) felveszi a kezdőértéket, amennyiben ez kisebb vagy egyenlő, mint a végérték, az ismétlés ágon kell haladni. Mielőtt visszatérnénk a szimbólumba, a ciklusváltozó értéke automatikusan 1-gyel nő. Az ismétlés ágon kell elhelyezni a ciklusmag utasításait. Amennyiben a ciklusváltozó értéke meghaladja a végértéket, a ciklus futása befejeződik, és a másik ágon folytatódik a program végrehajtása. |
Dobozolós módszer. Csak strukturált algoritmusok írhatók le segítségével. Hátrány, hogy előre kell dönteni a téglalap méretéről.
Az értékadás szimbóluma. | |
Input. A megadott változók értékeit a gép sorban bekéri a billentyűzetről. | |
Output. A megadott kifejezés eredménye kiíródik a képernyőre. | |
Feltételes elágazás. A megadott feltétel igaz értéke esetén a jobb oldali rész-blokkba zárt utasításblokk hajtódik végre. "Nem" esetén a bal oldali blokk utasításai hajtódnak végre. Az Igen és a Nem ágak felcserélhetők, ezért mindig jelölni kell, melyik melyik. | |
Számlálós ciklus. | |
Előltesztelős ciklus. Amíg a feltétel igaz, addig hajtja végre a ciklusmagot. | |
Hátultesztelős ciklus. |
Nincsenek szigorúan kötött szabályok, mivel nem egységes a kódrendszere. Nyelvi eszközökkel, mondatszerűen írjuk le a program-szerkezetet. Deklarációnál felsoroljuk, melyik változó, milyen típusú.
ALGORITMUS KEZD | AKEZD |
... | ... |
ALGORITMUS VÉGE | AVÉGE |
Értékadás | v:=érték |
Kiíratás | ki: kifejezés |
Beolvasás | be: változólista |
Elágazás | HA feltétel AKKOR ... HVÉGE |
Számlálós ciklus | CIKLUS cv:=ké-től vé-ig ... CVÉGE |
Előltesztelős ciklus | CIKLUS AMÍG feltétel ... CVÉGE |
Hátultesztelős ciklus | CIKLUS ... AMÍG feltétel |
folyamatábra, értékadás, input, output, számlálós ciklus, ciklusváltozó, struktogram, előltesztelős ciklus, hátultesztelős ciklus, leíró nyelv
Hasonlítsa össze a folyamatábra és a struktogram elemeit!
Melyik az a folyamatábra-szimbólum, amely csak egyszer fordul elő az ábrán?
Hogyan ábrázoljuk a ciklusokat folyamatábrával?
Hogyan működik a számlálós ciklus?
Mi a különbség az elől- és a hátultesztelős ciklusok között?
Struktogram esetén miből tudjuk, hogy értékadásról van szó?
Hogyan írjuk le leíró nyelvvel a feltételes elágazást?
Ábrázolja mindhárom algoritmus-leíró eszközzel az alábbi feladatot!
"Egy osztályban 27 tanuló érettségizett. Olvassuk be a tanulók egyéni átlagát! Számítsuk ki úgy az osztályátlagot, hogy az 1,5-nél gyengébben teljesítőket kihagyjuk!"