Tartalmi kivonat
http://www.doksihu A programkészítés lépései http://www.doksihu A problémamegoldás lépései Példa: házépítés Mit látunk? Mi minden történik a háttérben? 1. Igényfelmérés (elképzelések, anyagi lehetőségek) 2. Tervezés (mérnök, alaprajz) 3. Szervezés (ütemezés, építési vállalkozó) 4. Építkezés 5. Átvétel, használatba vétel 6. Bentlakás http://www.doksihu Az algoritmus végrehajtható (van hozzá végrehajtó) lépésenként hajtható végre a lépések maguk is algoritmusok pontosan definiált, adott végrehajtási sorrenddel egy folyamat véges hosszúságú leírása (végrehajtása esetleg időben végtelen) http://www.doksihu Az algoritmus Az algoritmus egyértelműen végrehajtható tevékenység-, vagy utasítássorozat, amely véges sok lépés után befejeződik. http://www.doksihu Kávéautomata használata Válaszd ki a kívánt italt! Dobj be egy 50 Ft-ost! Nyomd meg
a megfelelő gombot! Várj, amíg meg nem telik a pohár! Vedd el az italt! Idd meg! http://www.doksihu Kávéautomata használata 2. Válaszd ki a kívánt italt! Dobj be 50 Ft-ot! Nyomd meg a megfelelő gombot! Ismételd Ismétlés, feltételtől függően nézd a poharat! amíg folyik az ital! Vedd el az italt! Idd meg! http://www.doksihu Kávéautomata használata 3. Válaszd ki a kívánt italt! Választás két Ha van 50 Ft-osod tevékenység közül akkor Dobj be egy 50 Ft-ost, különben Dobj be három 20 Ft-ost! Nyomd meg a megfelelő gombot! Várj, amíg folyik az ital Vedd el az italt! Idd meg! http://www.doksihu Kávéautomata használata 4. Dobj be három 20 Ft-ost: Ismételd 3-szor Dobj be egy 20 Ft-ost! Ismétlés adott darabszámszor http://www.doksihu Kávéautomata használata Amit még nem is vettünk figyelembe: Esetleg nem működik Elfogyott az adott ital Nincs pohár Visszaad az
automata http://www.doksihu A programkészítés folyamata 1. 2. 3. 4. 5. 6. 7. 8. 9. Specifikálás A feladat formalizált leírása, a megoldással szemben támasztott igények. Miből? Mit? specifikáció Tervezés Mivel? Hogyan? adat- és algoritmusleírás Kódolás A gép hogyan hajtja végre? programnyelvi kód Tesztelés Helyes-e a program? hibalista Hibakeresés Hol a hiba? Hiba helye, oka Hibajavítás Hogyan jó? helyes program Minőség-, hatékonyságvizsgálat Jobbítható? jó program Dokumentálás használható program Karbantartás időtálló program http://www.doksihu A specifikáció A feladat meghatározása Egyértelmű, pontos, teljes Rövid, tömör, formalizált Szemléletes, érthető Szöveges leírás vagy matematikai megadás http://www.doksihu Példa: legmagasabb ember Feladat: Adjuk meg N ember közül a legmagasabbat! Mit adjunk meg: nevét, sorszámát, magasságát? Bemenet: N darab ember
magassága Kimenet: a legmagasabb ember sorszáma Miben vannak az adatok: centiméter, méter? Bemenet: N darab egész szám (cm) Kimenet: egész szám Több egyforma magas ember van http://www.doksihu Példa: másodfokú egyenlet Feladat: Adjuk meg egy másodfokú egyenlet megoldását! Hogyan van megadva? Bemenet: ax2+bx+c = 0 Kimenet: x1, x2 megoldások a=0 lehet-e? a=b=0 lehet-e? Bemenet: a, b, c valós számok, a és b egyszerre nem lehet 0 Előfeltétel: a bemenő Kimenet: x1, x2 valós értékek adatokra vonatkozó Mi a kiszámítási szabály? feltétel Hány megoldás van? Utófeltétel http://www.doksihu A specifikáció Bemenő adatok (azonosítók, értékhalmaz, mértékegység) bemenet Ismeretek a bemenetről előfeltétel Eredmények (azonosító,) kimenet Az eredmény kiszámítási szabálya utófeltétel