Professional Documents
Culture Documents
Katai Dorkaprez 1
Katai Dorkaprez 1
programozás alapjai
Kátai Dorka 9.a
1
Az algoritmizálás
1. Az algoritmus fogalma
-Az algoritmus egyértelműen végrehajtható, megengedett lépésekből álló
módszer, műveletsor, vagy tevékenység, ami egy felmerült probléma
megoldására alkalmas, és véges sok lépés után befejeződik.
-Minden tevékenységünkkel algoritmusokat követünk: minden
mozdulatsorunk, de még a gondolkodásunk is algoritmizálható.
-Pl.: levélírás, napi rutin, recept elkészítése, bútor összeszerelése
2
Az algoritmus jellemzői, elvárásai
I. Egyértelműség: azonos feltételek között, mindig pontosan ugyanúgy
kell végrehajtódnia
II. Végesség követelménye: véges sok lépés után be kell
fejeződnie
III. Olyan utasításokat tartalmazzon, amelyet a végrehajtó megírt, és képes
végrehajtani
Az algoritmus bemenő és kimenő adatokkal foglalkozik.
3
Algoritmus elemei
• Minden algoritmus 3 alapvető szerkezeti elemből építhető fel:
1. Szekvencia: Egymás után végrehajtandó tevékenységek sorozata.
2. Szelekció: lépések, tevékenységek közti választás, másnéven:
választás, elágazás.
3. Iteráció (ismétlés, ciklus): valamely tevékenység sorozat ismételt
végrehajtása addig, amíg egy feltétel le nem állítja a ciklust.
4
Algoritmus leírásának módszerei
I. Hétköznapi nyelv/Mondatszerű leírás
II. Folyamatábra
III. Struktogramm
5
Hétköznapi nyelv
• Megfogalmazására betűket, szavakat, mondatokat használunk
pl.: Elmegyek moziba.
Veszek jegyet.
Veszek pattogatott kukoricát.
Megnézem a filmet.
Hazamegyek.
6
Folyamatábra
Jelei:
A folyamatábra indulási és Input* és output*
befejezési pontja tevékenységek
Elágazás, választás
*Input: Bemenet, számítógépbe betáplált információ. *Output: kimenet, a betáplált adatokból a számítógép által létrehozott
7 és
kiadott információ.
Folyamatábra példák
1. Szekvencia 2. Szelekció 3. Iteráció
Start Start
Felkelek
Vége
8
Struktogramm példák
1. Szekvencia 2. Szelekció 3. Iteráció
9
Ciklus
Ciklusnak nevezzük az olyan szerkezetet, amikor egy
adott műveletsort (ciklusmag) addig kell ismételni, amíg
egy adott feltétel (ciklusfeltétel) teljesül.
10
Ciklusok fajtái
I. Feltételes ciklusok
-Elöltesztelős ciklus:
Ha a ciklusfeltételt a ciklusmag előtt vizsgáljuk,
akkor a ciklust elöltesztelős ciklusnak nevezzük.
Lehetséges, hogy ez a ciklus egyszer sem fog lefutni.
Az elöltesztelős ciklus tipikus kulcsszava a while.
11
Ciklusok fajtái
I. Feltételes ciklusok
-Hátultesztelős ciklus:
Ha a ciklusfeltételt a ciklusmag után vizsgáljuk,
akkor a ciklust hátultesztelős ciklusnak nevezzük.
Mivel a feltételvizsgálat a ciklusmag után áll,
ezért a hátultesztelős ciklus legalább egyszer mindenképpen lefut.
Kulcsszavai: while, until
12
Ciklusok fajtái
13
Adat
14
Elemi adatok
15
Adattípusok
16
Egyszerű adattípusok
Néhány példa:
- Egész típusok: byte, shortint, smallint, integer, longint
Méretük: 8 -128 bit
- Valós típusok: real, float, single, double
Méretük: 48 -128 bit
- Logikai típus: boolean (true - false) Méretük: 1-32 bit
- Karakter: char. (egy karakter tárolására alkalmas)
Méretük: 8-32 bit
17
Összetett adattípusok
• Tömb
• Szöveg
• Verem
• Lista
• Rekord
18
Algoritmus tervezése
19
Algoritmus tervezése
20
Algoritmus tervezése
21
Változó
22
Problémamegoldás folyamata
23
Programozás
24
Blokkprogramozás
25
A program
26
• Ma gyakorlatilag minden számítógép a végrehajtandó utasításokat
adatként memóriában tárolja.
• A számítógép belsejében a feldolgozó egység (CPU) végzi
a számításokat és vezérli a többi egységet.
• A központi feldolgozó egység által közvetlenül értelmezhető
adatsort gépi kódnak nevezzük.
• A CPU csak a nagyon egyszerű műveleteket
érti, ezért fordítóprogramot készítettek.
27
A fordítóprogram
28
Fejlesztői környezetek
29
Fejlesztői környezet
30
A programfejlesztés lépései
31
Elemzés
32
Elemzés
33
A kódolás
34
Tesztelés
35
Szintaktikai hiba
36
Szemantikai hiba
37
Hibajavítás alapelvei
38
Dokumentálás
39
Átadás és karbantartás
Átadás:
A felhasználó ekkor ismeri meg a véglegesnek
szánt verziót és veszi teljes mértékben birtokába.
Karbantartás:
Ha a program használata során rendelleneségek tapasztalhatók,
akkor a fejlesztők kötelessége azokat kijavítani,
a garanciális időn belül.
40
Lépésenkénti finomítás elve
41
Objektumorientált programozás
42
Objektumorientált gondolkodás
43
Kérdéssor
1. Mi az az algoritmus?
2. Melyek az algoritmus elemei?
3. Melyek az algoritmus leírásának módszerei?
4. Melyek az algoritmus jellemzői?
5. Mi az a ciklus?
6. Milyen adattípusok vannak?
7. Mi a változó fogalma?
44
Kérdéssor
8. Mi az a programozás?
9. Mi a program fogalma?
10. Mi az a fejlesztői környezet?
11. Mikor beszélünk szintaktikai és szemantikai hibáról?
12. Mi az a lépésenkénti finomítás elve?
13. Mi az objektumorientált programozás fogalma?
45
Forrásjegyzék
• https://slideplayer.hu/slide/13021587/
• http://www.bocskaigimnazium.hu/Dokumentumok/algoritmusok.pdf
• https://users.iit.uni-miskolc.hu/~vargae/Segedlet/ElekT_ProgAlapfoga
lmak.pdf
• https://slideplayer.hu/slide/2198255/
• https://hu.wikipedia.org/wiki/Ciklus_(programoz%C3%A1s)#H%C3%A
1tultesztel%C5%91_ciklus
• http://info.nytta.hu/munkak/12b_ab/1107_adattipusok.pdf
46
Forrásjegyzék
• http://www.zmgzeg.sulinet.hu/bemutatkozunk/tankonyv/progismhal
ado/Proghalado1.pdf
• https://hu.wikipedia.org/wiki/Program_(informatika)
• https://wiki.prog.hu/wiki/Ciklus
• https://irh.inf.unideb.hu/~vargai/APA/Flowchart_hu.html
• https://slideplayer.hu/slide/2100097/
• Infó füzet és tankönyv
47
Köszönöm a figyelmet!
48