Algoritmizálás és adatmodellezés tanítása 1. előadás

Hasonló dokumentumok
Adatszerkezetek I. 1. előadás

Algoritmizálás + kódolás C++ nyelven és Pascalban

Algoritmizálás, adatmodellezés 1. előadás

Programozás alapjai. 5. előadás

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Algoritmizálás, adatmodellezés 1. előadás

Algoritmizálás és adatmodellezés tanítása 4. előadás

Programozási nyelvek a közoktatásban alapfogalmak II. előadás

Algoritmizálás + kódolás C++ nyelven és Pascalban

Rendezések. A föltöltés nemcsak az r-re vonatkozik, hanem az s-re is. Ez használható föl a további rendezések

Algoritmizálás és adatmodellezés tanítása 6. előadás

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez

Eljárások, függvények

A C# programozási nyelv alapjai

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

A feladat. A főprogram

Programozási nyelvek (ADA)

Neumann János Tehetséggondozó Program Gráfalgoritmusok II.

Megoldott feladatok. Informatika

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

Komputeralgebra Rendszerek

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez

Java II. I A Java programozási nyelv alapelemei

A PROGRAMOZÁS ALAPJAI 3. Készítette: Vénné Meskó Katalin

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Algoritmizálás és adatmodellezés tanítása 2. előadás

Az első fájlos program

Programozás alapjai 6. előadás. Wagner György Általános Informatikai Tanszék

Algoritmizálás és adatmodellezés tanítása 3. előadás

Programozási tételek általánosítása 2. Szlávi Péter 2015

Szkriptnyelvek. 1. UNIX shell

1. Egyszerű (primitív) típusok. 2. Referencia típusok

PASzSz. Dr. Kotsis Domokos

Programozási nyelvek I. 5. előadás (Gregorics Tibor anyagának felhasználásával)

Java II. I A Java programozási nyelv alapelemei

Memóriagazdálkodás. Kódgenerálás. Kódoptimalizálás

Programozási alapismeretek 1. előadás

Java programozási nyelv

SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS

A C programozási nyelv I. Bevezetés

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

14. Mediánok és rendezett minták

Algoritmusok, adatszerkezetek, objektumok

A JavaScript főbb tulajdonságai

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.

Pénzügyi algoritmusok

Az algoritmusok alapelemei

PROGRAMOZÁSI NYELVEK (ELMÉLET)

A C programozási nyelv I. Bevezetés

Programozás BMEKOKAA146. Dr. Bécsi Tamás 3. előadás

Algoritmizálás, adatmodellezés tanítása 6. előadás

Operációs rendszerek gyak.

7. Strukturált típusok

C programozás. 1 óra Bevezetés

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)

Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Delphi programozás IV.

Informatika terméktervezőknek

A C programozási nyelv II. Utasítások. A függvény.

OOP I. Egyszerő algoritmusok és leírásuk. Készítette: Dr. Kotsis Domokos

A szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok

Kiterjesztések sek szemantikája

Rekord adattípus. Egymásba ágyazott rekordok. With utasítás. Változó rekord. Rekord konstans

Programozási alapismeretek 3. előadás

Programozási alapismeretek. Bevezető

Informatika E FAKT , = ±

Programozási alapismeretek. 1. előadás. A problémamegoldás lépései. A programkészítés folyamata. Az algoritmus fogalma. Nyelvi szintek.

Algoritmusok helyességének bizonyítása. A Floyd-módszer

A C# PROGRAMOZÁSI NYELV

Algoritmusok Tervezése. 4. Előadás Visual Basic 1. Dr. Bécsi Tamás

Algoritmusok - pszeudókód... 1

Webprogramozás szakkör

Apple Swift kurzus 3. gyakorlat

3. Gyakorlat Ismerkedés a Java nyelvvel

Halmaz típus Értékhalmaz:

SZÁMÍTÓGÉPI GRAFIKA VÁGÁS

1. A feladatról. 2. Az áramkör leírása. Mechatronika, Optika és Gépészeti Informatika Tanszék D528. Léptetőmotor vezérlése

Egyszerű programok készítése Kifejezések Bitszintű műveletek Relációs műveletek... 58

C programozási nyelv

NAGYPONTOSSÁGÚ EGÉSZ-ARITMETIKA TARTALOM

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

6. A Pascal nyelv utasításai

Algoritmizálás és adatmodellezés tanítása 9. előadás

Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból

Algoritmizálás és adatmodellezés 2. előadás

Haladó DBMS ismeretek 1

BASH script programozás II. Vezérlési szerkezetek

Járműfedélzeti rendszerek II. 2. előadás Dr. Bécsi Tamás

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.

Programozás alapjai. 2. előadás

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r

B I T M A N B I v: T M A N

A C programozási nyelv III. Pointerek és tömbök.

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y.

Mintavételes szabályozás mikrovezérlő segítségével

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19.

Átírás:

Algoritmizálás és adatmodellezés tanítása 1. előadás

Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az induló élből bármely csomópont elérhető, s bármely csomópontból el lehet jutni a befejező élre. Háromféle csomópontot tartalmaz: Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 2/32

Algoritmus-leíró eszközök Folyamatábra A csomópontokból előállíthatók az algoritmikus struktúrák: Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 3/32

Algoritmus-leíró eszközök Definíció: Strukturált programnak nevezzük azt a programot, amely csak a fenti három algoritmikus szerkezetet (szekvencia, elágazás, ciklus) tartalmazza. Nem strukturált alapszerkezetek: Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 4/32

Algoritmus-leíró eszközök Nem strukturált alapszerkezetek: Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 5/32

Algoritmus-leíró eszközök Kiegészítő elemek a folyamatábrához: Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 6/32

Algoritmus-leíró eszközök Struktogram Programgráf élek nélkül: Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 7/32

Algoritmus-leíró eszközök Mondatszerű leírás Program: utasítássorok Program vége. azonosító := kifejezés vagy tömbazonosító1():=tömbazonosító2() vagy tömbazonosító1(i:1..n):=tömbazonosító2(i:1..n) Be: azonosítók, tömbazonosító()[feltételek] Ki: kifejezések, tömbazonosító() [formátum megkötés] Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 8/32

Algoritmus-leíró eszközök Mondatszerű leírás Ha feltétel akkor utasítássor Ha feltétel akkor utasítássor 1 különben utasítássor 2 Ha feltétel akkor utasítássorok 1 különben utasítássorok 2 Elágazás vége Megjegyzés: a feltétel egy logikai kifejezést rövidít most és később is. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 9/32

Algoritmus-leíró eszközök Mondatszerű leírás Ha feltétel 1 akkor utasítássorok 1 különben ha feltétel 2 akkor utasítássorok 2 különben ha különben utasítássorok n Elágazás vége Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 10/32

Algoritmus-leíró eszközök Mondatszerű leírás Elágazás feltétel 1 esetén utasítássorok 1 feltétel 2 esetén utasítássorok 2 feltétel n esetén utasítássorok n egyéb esetben utasítássorok n+1 Elágazás vége Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 11/32

Algoritmus-leíró eszközök Mondatszerű leírás Ciklus amíg feltétel utasítássorok Ciklus vége Ciklus utasítássorok amíg feltétel Ciklus vége Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 12/32

Algoritmus-leíró eszközök Mondatszerű leírás Ciklus cv=k-tól V-ig utasítássorok Ciklus vége Ciklus cv=k-tól V-ig L-esével utasítássorok Ciklus vége Ciklus cv H utasítássorok Ciklus vége Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 13/32

Algoritmus-leíró eszközök Mondatszerű leírás Eljárás Eljárásnév(paraméterek): utasítássorok Eljárás vége. Függvény Függvénynév(paraméterek):értéktípus utasítássorok Függvénynév := kifejezés Függvény vége. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 14/32

Algoritmus-leíró eszközök Mondatszerű leírás Művelet Operátornév(paraméterek) név:értéktípus utasítássorok név := kifejezés Művelet vége. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 15/32

Pascal programozási nyelv A Pascal nyelv elemei Mindent deklarálni kell a felhasználása előtt. Mindent mindentől pontosvessző választ el. Műveletek (nem szokásosak): and, or, not, xor, div, mod. Blokkstruktúra, hatáskör, láthatóság. Fejlesztői környezet: Geany 0.18 vagy későbbi verzió Fordítóprogram: fpc 2.6.2 vagy későbbi verzió Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 16/32

Kódolási szabályok Program Program: deklarációk Program vége. alprogram-definíciók Program Név; deklarációk alprogram-definíciók Begin End. Megjegyzés: az alprogram-definíciók eljárások, függvények és operátorok definícióit tartalmazhatja. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 17/32

Kódolási szabályok Deklarációk Típus Típus= Típuskonstrukció Konstans név: Típus(érték) Változó név:típus Változó név: Típus(érték) Type Típus= Típuskonstrukció; Const név=érték; vagy Const név:típus=érték; Var név:típus; Var név:típus; Begin név=érték; Az érték ez esetben vagy valamilyen számtípus, vagy String. Ezt a konstans-deklarációt legfőképpen indextípusban használjuk. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 18/32

Kódolási szabályok Típusok: Egész Valós Karakter Logikai Felsorolás: Integer Real Char Boolean (kons 1,... ) (kons 1,... ) Speciális egész: Longint, Byte, Word. Speciális műveletek: succ, pred, ord, shl, shr, <<, >>. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 19/32

Kódolási szabályok Rekord( mezőnév 1 :Típus 1 ) Szöveg; Szöveg(50) Tömb(indextípus:elemtípus) Halmaz(elemtípus) Fájl(elemtípus) Szövegfájl Record mezőnév 1 :Típus 1 ; End String; String[50] Array [indextípus] of elemtípus Set of elemtípus File of elemtípus Text Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 20/32

Elemi Kódolási szabályok változó:=kifejezés Be:változó [feltétel] Ki:kifejezés változó:=kifejezés; Repeat Write('kérdés'); Readln(változó); Until feltétel; Write(Kifejezés); vagy Writeln(Kifejezés); Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 21/32

Kódolási szabályok Elágazások Ha feltétel akkor utasítás Ha feltétel akkor Elágazás vége If feltétel then utasítás; If feltétel then Begin End; Ha feltétel akkor utasítás 1 különben utasítás 2 Ha feltétel akkor 1 különben 2 Elágazás vége If feltétel then utasítás 1 else utasítás 2 ; If feltétel then Begin 1 End else Begin 2 End; Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 22/32

Elágazások Elágazás felt 1 esetén 1 felt 2 esetén 2 egyéb esetben Elágazás vége Kódolási szabályok If felt 1 then Begin 1 End else if felt 2 then Begin 2 End else Begin End Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 23/32

Elágazások Elágazás felt 1 esetén 1 felt 2 esetén 2 egyéb esetben Elágazás vége Kódolási szabályok Case kif of ért 1 : Begin 1 End; ért 2 : Begin 2 End; else End; Begin End Ez a kódolási szabály csak speciálisan a felt i kif=ért i esetben alkalmazható. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 24/32

Kódolási szabályok Ciklusok Ciklus amíg feltétel Ciklus vége Ciklus amíg feltétel Ciklus vége While feltétel do Begin End; Repeat Until not feltétel; Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 25/32

Kódolási szabályok Ciklusok Ciklus c=k-tól V-ig Ciklus vége Ciklus c=k-tól V-ig -1-esével Ciklus vége For c:=k to V do Begin End; For c:=k downto V do Begin End; Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 26/32

M21_1_1_10K.png Kódolási szabályok Eljárások Eljárás név(par,...): deklarációk Eljárás vége. Függvény név(par,...):típus deklarációk név:=érték Függvény vége. Procedure név(par;...); deklarációk Begin End; Function név(par;...):típus; deklarációk Begin ; név:=érték; End Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 27/32

M21_1_1_10K.png Kódolási szabályok Operátorok Művelet név(par 1,par 2 )k:típus deklarációk k:=érték Művelet vége. Operator OP(par1,par2) kimenet:típus; deklarációk Begin ; kimenet:=érték; End; Pascalban csak meglévő operátorokra. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 28/32

Adatok jellemzői 1. Azonosító Az a jelsorozat, amellyel hivatkozhatunk a tartalmára, amely által módosíthatjuk tartalmát. 2. Hozzáférési jog Adatokat módosítani, illetve értéküket lekérdezni, használni lehet. 3. Kezdőérték A születéskor hozzárendelt érték. Változóknál deklarációban kaphat értéket, vagy eleve van típushoz rendelt kezdőérték, esetleg speciális nem definiált érték, s így akkor mód van hivatkozás ellenőrzésre is. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 29/32

Adatok jellemzői 4. Hatáskör A programszöveg azon tartománya, amelyben az adathoz a hozzáférés megengedett. 5. Láthatóság A programszöveg azon tartománya, amelyben az adathoz a hozzáférés lehetséges. Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 30/32

Adatok jellemzői 6. Élettartam A futási időnek az az intervalluma, amelyben az adat azonosítója mindvégig ugyanazt az objektumot jelöli. 7. Értéktípus Az adatoknak az a tulajdonsága, hogy értékei mely halmazból származnak (értékhalmaz) és tevékenységeknek (eljárások, függvények, operátorok) mely készlete, amely létrehozza, felépíti, lerombolja és részekre bontja, alkalmazható rá (asszociált műveletek). Pap Gáborné Zsakó László: Algoritmizálás, adatmodellezés 2015.03.26. 31/32

Algoritmizálás és adatmodellezés tanítása 1. előadás vége