Összeállította: Sashalmi Tibor 2. Algoritmusok Összeállította: Sashalmi Tibor
Egy probléma megoldása során általában megha-tározott lépések sorozatát hajtjuk végre, azaz egy algoritmust követünk. Az algoritmus egy tevé-kenység sorozat leírása melyet végrehajtva eljut-hatunk a kívánt ered-ményhez Bemenő adatok Algoritmus Kimenő adatok
Az algoritmusokkal szemben a következő elvárásokat fogalmazhatjuk meg: Általános érvényű legyen. – Az egymás-tól csak bemenő adatokban különböző felada-tok megoldása is lehetséges vele Véges számú lépés után véget ér. Egyértelműen meghatározott lépések sorozatából áll. – Minden részlépésnek van egy rákövetkezője, kivéve persze a legutolsót
A program Az algoritmus megalkotása után, azt olyan formára kell hozni, hogy azt a számítógép megértse. Az algoritmusnak ezt a formáját nevezzük programnak. A program részlépéseit utasításoknak nevezzük, a számítógép ezeknek az utasí-tásoknak a sorozatát hajtja végre. Az algoritmus hatékonyságát két szempont szerint vizsgáljuk: Mekkora a memóriaigénye? Mennyi a végrehajtási idő?
2.1 A változó fogalma Az algoritmusban egy adat vagy állandó értékkel bír, vagy megváltoztatja értékét. Az állandó értékű adatokat nevezzük konstansok-nak. Azt az adatot, amely megváltoztatja értékét, válto-zónak nevezzük. A változó jellemzői: Név – A változót a programban névvel azonosítjuk. Típus – A változó valamilyen adat típussal rendelkezik (pl.: szám, karakter, logikai, stb.) Érték - A változónak mindig van a programban valamilyen konkrét értéke. Cím - A változó által tárolt adat tárbeli helyének a címe.
2.2 Alapvető lépések Beolvasás - A programvégrehajtáshoz szükséges adatok közlése a számítógéppel Kiírás - Az algoritmus befejeztével létrejött adatok kőzése a külvilág felé, Értékadás - Az értékadás jele „:=„ . (pl.: x:=5) Elágazás - Egy feltételtől függ, hogy a program mi- lyen irányban folytatódik. Ciklus - Ugyan annak a feladatsornak többszöri végrehajtása. 1. elöl tesztelő ciklus 2. hátul tesztelő ciklus
2.3 Algoritmusleíró eszközök Folyamatábra – Az algoritmus részlépéseit különböző geometriai szimbólumokkal szemlélteti Struktogram - Az egész algoritmust egy téglalapba írjuk be. Ennek a téglalapnak a felosz- tásával ábrázoljuk az algoritmust. Felülről lefelé kell haladnunk. Mondatszerű leírás - Az algoritmust egymás után következő „mondatokkal” írhatjuk le. Egyéb jelölések – Ha egy sorba több utasítást írunk, akkor közéjük kettőspontot kell írni. Az algoritmus leírásba bárhová elhelyezhe- tünk megjegyzéseket.
VÉGE Algoritmusok
Folyamatábra szimbólumok START Általános műveletvégzés STOP Határszimbólumok. N Elágazás Feltétel BE: KI: I Részalgoritmus Beolvasó, kiíró utasítás vissza
Struktogram szimbólumok feltétel ciklusmag Általános műveletvégzés Elöl tesztelő ciklus feltétel Igaz Hamis ciklusmag Utasitás 1 Utasitás 2 feltétel Elágazás Hátul tesztelő ciklus Vissza
Mondat szerű leírás elemei Beolvasó, kiíró utasítások Értékadás Elágazások Egyágú elágazás Kétágú elágazás Többágú elágazás Ciklusok Számlálásos ciklusutasítás Elöl tesztelő ciklus Hátul tesztelő ciklus Eljárások Vissza