Program: a processzort vezérlő utasítások sorozata.
Algoritmus: lépések jól meghatározott sorozata, amivel adott feladatot meg lehet oldani. Például a receptek algoritmusok („a krumplileves elkészítésének algoritmusa”).
Algoritmusok megadása
1. Szóban
Példa: írjuk le a számokat 1-től 10-ig
1. lépés: vedd az 1-est
2. lépés: írd le az aktuális számot
3. lépés: adj hozzá 1-et
4. lépés: ha a szám most ≤ 10, akkor menj a 2. lépésre,
különben az 5. lépésre
5. lépés: vége
Példa: írjuk le a 3-mal osztható számokat számokat 1-től 100-ig
1. lépés: vedd az 1-est
2. lépés: ha az aktuális szám osztható 3-mal, akkor írd le
3. lépés: adj hozzá 1-et
4. lépés: ha a szám most ≤ 100, akkor menj a 2. lépésre,
különben az 5. lépésre
5. lépés: vége
Az előző példa másképp:
1. lépés: vedd a 3-as számot
2. lépés: írd le
3. lépés: adj hozzá 3-at
4. lépés: ha a szám most ≤ 100, akkor menj a 2. lépésre,
különben az 5. lépésre
5. lépés: vége
2. Folyamatábrák segítségével
A folyamatábrák elemei:
- indulópontot és véget jelző címkék (start, stop / end):
- egy-egy elvégzendő lépés (utasítás), például értékadás változónak, beolvasás, kiírás stb:
- elágazás, benne valamilyen feltétellel:
A változók olyan tárolóegységek, amikben egyszerre csak egy érték lehet, az értéküket le lehet cserélni, illetve felhasználni műveletekhez (mindig az aktuálisat).
Példa: Írjuk ki a számokat 1-től 10-ig:
Példa: Írjuk ki a páratlan számokat 1-től 101-ig (1, 3, 5, …, 101):
Más megoldás ugyanarra:
Példa: írjuk ki a következő sorozatot az első 10-es szám megjelenéséig: 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 …
A nyomonkövetés azt jelenti, hogy táblázatot készítünk a változók értékeivel és ezek változásával, valamint lejegyezzük, hogy mit írt ki az algoritmus. Az utóbbi példa esetén:
meddig | 1 2 3 4 ...
----------+--------------------------------------
szam | 1 2 1 2 3 1 2 3 4 1 2 3 4 5 ...
KIMENET:
1 1 2 1 2 3 1 2 3 4 ...
Az értékek változásakor a régit le is szokás húzni (a fentebbi táblázatban csak mellé van írva az új érték), mindig csak az utolsó értéket figyeljük (ezt hívjuk „aktuális”-nak).
HF.
Folytassuk a fentebbi táblázatot (vigyük végig a nyomonkövetést)!
3. Programozási nyelvek (vagy pszeudokód) használatával
Programozási nyelv:
- precíz jelölésrendszer, mellyel olyan formában lehet algoritmusokat leírni, melyet egy fordítóprogram processzorutasítások sorozatává tud alakítani
- az programozási nyelv szabályainak megfelelően leírt szöveget programkódnak / forráskódnak nevezzük
Pszeudokód: a programozási nyelvekhez hasonló jelölésrendszer, de kevésbé precíz, emberi olvasónak íródik.