420 likes | 651 Views
Algoritmizálás. Oberhuber Balázs. Algoritmus készítés. Algoritmus Utasítások sorozata Egyértelműen végrehajthatók Adatokkal dolgozik Bemenő (input) adatok Kimenő (output) adatok. Algoritmus készítés. Algoritmus Véges számú lépésből áll Hatékony Elronthatatlan Felhasználóbarát.
E N D
Algoritmizálás Oberhuber Balázs
Algoritmus készítés • Algoritmus • Utasítások sorozata • Egyértelműen végrehajthatók • Adatokkal dolgozik • Bemenő (input) adatok • Kimenő (output) adatok
Algoritmus készítés • Algoritmus • Véges számú lépésből áll • Hatékony • Elronthatatlan • Felhasználóbarát
A programkészítés lépései • Feladatkitűzés • A feladat megfogalmazása hétköznapi, vagy a meg-rendelő szakmai nyelvén. A megvalósíthatóságot a rendszerszervező vizsgálja. • Specifikáció • A rendszerszervező, a programozó és a megrendelő meghatározzák az alkalmazás feltételeit és határait. Itt határozzák meg a javadalmazást, és az elkészítés várható idejét.
A programkészítés lépései • Algoritmustervezés • A program tervezője kialakítja a menürendszert, elkészíti a képernyőtervet, meghatározza az adatábrázolási módokat és a feladatokat megvalósító algoritmusokat. • Kódolás • A program megvalósítása már egy konkrét programozási nyelven történik.
A programkészítés lépései • Tesztelés • Alapos előkészítés esetén mechanikusan elvégezhető lépés. A korábbi lépések folyamán összegyűjtött, esetleges szélső és extrém mintaadatok bevitelével ellenőrzik a program működését.
A programkészítés lépései • Dokumentálás • Egy programhoz két dokumentációt kell elkészíteni. • A Felhasználói kézikönyv tartalmazza a program céljának közérthető nyelven történő leírását, az installálás menetét, egy menürendszer leírást, bemutatja a jellegzetesebb képernyőképeket. • A Fejlesztői kézikönyv tartalmazza az összes korábbi fázisban keletkezett dokumentációt.
A programkészítés lépései • Átadás • A felhasználó ekkor ismeri meg a véglegesnek szánt verziót, és veszi teljes mértékben birtokába. A nagyobb programok esetén a fejlesztők kiképzik a későbbi kezelőket a használatra. • Karbantartás • Ha a program használata folyamán rendellenességek tapasztalhatók, akkor a fejlesztők kötelessége azokat kijavítani a garanciális időn belül.
Algoritmusleíró eszközök • Mondatszerű leírás • Folyamatábra • Struktogram
Mondatszerű leírás • Beolvasó és kiíró utasítások • Formájuk • BE: változók felsorolása • KI: kifejezések felsorolása • Értékadó utasítás • Formája • Változó := kifejezés • A Változó felveszi a Kifejezés aktuális értékét
Mondatszerű leírás • Elágazások (feltételes utasítások) • Feltételes utasításvégrehajtás (egyirányú elágazás) • Formája • Ha <feltétel> akkor <utasítás> • Ha a feltétel igaz, akkor az utasítás végrehajtódik. Ha hamis, akkor nem hajtódik végre • Kétirányú elágazás • Formája • Ha <feltétel> akkor <utasítás1>Különben <utasítás2>Elágazás vége • Ha a feltétel igaz, akkor utasítás1 hajtódik végre, ha nem, akkor az utasítás2.
Mondatszerű leírás • Elágazások (feltételes utasítások) • Többirányú elágazás • Formája • Elágazás kezdete <feltétel_1> esetén <utasítás_1> <feltétel_2> esetén <utasítás_2> <feltétel_n> esetén <utasítás_n> Egyébként <utasítás_egyéb>Elágazás vége • A legelső teljesülő feltételhez tartozó utasítás kerül végre-hajtásra. Ha egyik feltétel sem teljesül akkor utasítás_egyéb hajtódik végre. • Bármely esetben az elágazás vége után folytatódik a program
Mondatszerű leírás • Ciklusszervező utasítások • Számlálós ciklus • Formája • Ciklus <ciklusváltozó>:=<kezdőértéktől> <végértékig> <lépésközzel> ciklusmag utasításaiCiklus vége • A ciklus változója a kezdőértékről indul és lépésközzel változik a végérték eléréséig. A három együttesen határozza meg, hogy hányszor kerül végrehajtásra a ciklusmag.
Mondatszerű leírás • Ciklusszervező utasítások • Elöltesztelő ciklus • Formája • Ciklus amíg <feltétel> ciklusmag utasításaiCiklus vége • Amíg a feltétel teljesül, addig a ciklusmag végrehajtásra kerül, ha már nem teljesül akkor a ciklus vége után folytatódik a program.
Mondatszerű leírás • Ciklusszervező utasítások • Hátultesztelő ciklus • Formája • Ciklus ciklusmag utasításaiAmíg <feltétel> (Ciklus vége) • A ciklusmag mindaddig végrehajtásra kerül, amíg a feltétel nem teljesül. Ha teljesül, akkor a ciklus vége után folytatódik a program. • A ciklusmag egyszer mindenképp végrehajtódik.
Folyamatábra START • Határszimbólumok • A program elejét és a végét jelzik STOP
Folyamatábra Be:változó(k) Ki: változó(k) Adatbevitel Adatkiírás
Folyamatábra • Tevékenység • Értékadó • Műveletvégrehajtás • Aritmetikai kifejezés kiértékelése • Stb.
Folyamatábra • Döntéscsomópont • Az F feltételtől függően a vezérlés az igaz vagy hamis ágon folytatódik N I Feltétel
Folyamatábra Számlálós ciklus
Folyamatábra Csatlakozási pontok 1. 1.
Struktogram Tevékenység (szekvencia) Tevékenység1 Tevékenység 2
Struktogram Szelekció (egyágú) Feltétel Igen Tevékenység(ek)
Struktogram Szelekció (kétágú) Feltétel Igen Nem Tevékenység(ek) Tevékenység(ek)
Struktogram Szelekció (többágú) Feltétel Feltétel1 Feltétel2... Egyébként ... Tevék.2 Tevék.1
Struktogram Ciklus (számlálós) Ciklusváltozó:= ….. tól ….ig Ciklusmag
Struktogram Ciklus (elöltesztelő) Feltétel Ciklusmag
Struktogram Ciklus (hátultesztelő) Ciklusmag Feltétel
Adattípusok • Egyszerű • Összetett
Egyszerű adattípusok • Egész • Byte • Word • Integer • Longint • Valós • Real • Karakter • Char • String • Logikai • Boolean
Egyszerű adattípusok • Egész • Egész számok halmaza • Előjeles egészek • Túlcsordulás fordulhat elő! • 2 bájtot foglal • Példa • A:=153B:= - 25
Egyszerű adattípusok • Valós • Valós számok halmaza • Lebegőpontos formátum • 6 bájtot foglal • Példa • A:=13.125
Egyszerű adattípusok • Karakter • Bármilyen ASCII kódú karakter • 1 bájtot foglal • Példa: • A:=‘Y’
Egyszerű adattípusok • Logikai • Két értéke van: • IGAZ (TRUE) (1) • HAMIS (FALSE) (0) • 1 bájtot foglal
Összetett adattípusok • Tömb • Szöveg • Verem • Lista • Rekord
A lekvár • Menj el a nagymamához! • Kérjél tőle 5 üveg baracklekvárt! • Hozd haza a lekvárokat!
A lekvár (irány a nagyi) • Menj ki a házból! • Várj a buszra! • Ha jön 10 percen belül, akkor Szállj fel a buszra! Különben menj gyalog! • Csengess be a nagymamához!
A lekvár (a beszerzés) • Menj el a nagymamához! • Ha otthon van akkor kérj tőle 5 üveg baracklekvárt! Különben vegyél a boltban 5 üveg baracklekvárt! • Hozd haza a lekvárokat!
A lekvár (boltban) • Menj be a boltba! • Vegyél le a polcról 5 üveg baracklekvárt! • Fizesd ki a lekvárokat! • Tedd a lekvárokat a szatyrodba!
A lekvár (a polcnál) • Csináld ötször: • Vegyél le a polcról 1 üveg baracklekvárt! • Tedd a kosaradba a lekvárt!
A lekvár (az egész program) Menj el a nagymamához! • Menj ki a házból! • Várj a buszra! • Ha jön 10 percen belül, akkor Szállj fel a buszra!Különben Menj gyalog! • Csengess be a nagymamához! Kérjél tőle 5 üveg baracklekvárt! • Ha otthon van akkor Kérj tőle 5 üveg baracklekvárt!Különben Menj be a boltba! • Csináld ötször: • Vegyél le a polcról 1 üveg baracklekvárt! • Tedd a kosaradba a lekvárt! • Fizesd ki a lekvárokat! • Tedd a lekvárokat a szatyrodba! Hozd haza a lekvárokat!