Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása



Hasonló dokumentumok
Sorozatok határértéke SOROZAT FOGALMA, MEGADÁSA, ÁBRÁZOLÁSA; KORLÁTOS ÉS MONOTON SOROZATOK

Sorozatok I. Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma)

Programozás alapjai 1.Gy: Algoritmizálás P R O

Számelmélet Megoldások

Gyakorló feladatok az 1. nagy zárthelyire

Programozás alapjai (ANSI C)

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉP SZINT Számelmélet

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

2015, Diszkrét matematika

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

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Sorozatok II.

Osztályozóvizsga követelményei

ÖSSZEVONT ÓRÁK A MÁSIK CSOPORTTAL. tartósság, megerősítés, visszacsatolás, differenciálás, rendszerezés. SZÁMTANI ÉS MÉRTANI SOROZATOK (25 óra)

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

Felvételi tematika INFORMATIKA

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Számelmélet I.

Programozás alapjai. 6. gyakorlat Futásidő, rekurzió, feladatmegoldás

Osztályozóvizsga és javítóvizsga témakörei Matematika 9. évfolyam

Összetett programozási tételek Rendezések Keresések PT egymásra építése. 10. előadás. Programozás-elmélet. Programozás-elmélet 10.

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

SZÁMTANI SOROZATOK. Egyszerű feladatok. 1. Egy számtani sorozatban:

ÍRÁSBELI BELSŐ VIZSGA MATEMATIKA 8. évfolyam reál tagozat Az írásbeli vizsga gyakorlati és elméleti feladatai a következő témakörökből származnak.

I. Specifikáció készítés. II. Algoritmus készítés

Matematika szóbeli érettségi témakörök 2016/2017-es tanév őszi vizsgaidőszak

2016, Diszkrét matematika

1. tétel. 1. Egy derékszögű háromszög egyik szöge 50, a szög melletti befogója 7 cm. Mekkora a háromszög átfogója? (4 pont)

Követelmény az 5. évfolyamon félévkor matematikából

Az értékelés a következők szerint történik: 0-4 elégtelen 5-6 elégséges 7 közepes 8 jó 9-10 jeles. A szóbeli vizsga várható időpontja

A sorozat fogalma. függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet. az értékkészlet a komplex számok halmaza, akkor komplex

Webprogramozás szakkör

Analízis előadás és gyakorlat vázlat

C programozás. { Márton Gyöngyvér, 2009 } { Sapientia, Erdélyi Magyar Tudományegyetem }

MATEMATIKA TANMENET. 9. osztály. 4 óra/hét. Budapest, szeptember

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Számelmélet

MATEMATIKA TANMENET 9.B OSZTÁLY FIZIKA TAGOZAT HETI 6 ÓRA, ÖSSZESEN 216 ÓRA

Matematika osztályozó vizsga témakörei 9. évfolyam II. félév:

Követelmény a 6. évfolyamon félévkor matematikából

Hatványozás. A hatványozás azonosságai

Objektumorientált Programozás III.

Egyszerű programozási tételek

Arany Dániel Matematikai Tanulóverseny 2008/2009-es tanév első (iskolai) forduló haladók II. kategória

Osztályozó- és javítóvizsga témakörei MATEMATIKA tantárgyból 2016 / tanév

Adatszerkezetek 2. Dr. Iványi Péter

NULLADIK MATEMATIKA ZÁRTHELYI

2. Adott a valós számok halmazán értelmezett f ( x) 3. Oldja meg a [ π; π] zárt intervallumon a. A \ B = { } 2 pont. függvény.

Érettségi feladatok: Egyenletek, egyenlőtlenségek 1 / május a) Melyik (x; y) valós számpár megoldása az alábbi egyenletrendszernek?

SZÁMTANI SOROZATOK. Egyszerű feladatok

ARANYMETSZÉS. - érettségi dolgozat védése analízis és algebrából - Készítette: Szénási Eszter Mentor: Dr. Péics Hajnalka június 11.

2018, Diszkrét matematika

Bevezetés az informatikába

Bevezetés a programozásba. 5. Előadás: Tömbök

Osztályozó- és javítóvizsga. Matematika tantárgyból

Analízis I. Vizsgatételsor

Megoldás: Mindkét állítás hamis! Indoklás: a) Azonos alapú hatványokat úgy szorzunk, hogy a kitevőket összeadjuk. Tehát: a 3 * a 4 = a 3+4 = a 7

MATEMATIKA C 12. évfolyam 4. modul Még egyszer!

352 Nevezetes egyenlôtlenségek. , az átfogó hossza 81 cm

Hogyan folytatnád? Gellért-hegy, Kékes. /Kilimandzsáró,, Mount Everest,Mount Blanc/ Háromszögszámok

Intergrált Intenzív Matematika Érettségi

Oktatási Hivatal. 1 pont. A feltételek alapján felírhatók az. összevonás után az. 1 pont

Kombinatorikai algoritmusok. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)

Kombinatorikai algoritmusok

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

A(a; b) = 2. A(a; b) = a+b. Példák A(37; 49) = x 2x = x = : 2 x = x = x

Az osztályozóvizsgák követelményrendszere MATEMATIKA

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés

2010. október 12. Dr. Vincze Szilvia

1.1. Definíció. Azt mondjuk, hogy a oszója b-nek, vagy más szóval, b osztható a-val, ha létezik olyan x Z, hogy b = ax. Ennek jelölése a b.

11. Sorozatok. I. Nulladik ZH-ban láttuk:

// keressük meg a legnagyobb faktoriális értéket, ami kisebb, // mint százmillió

A programozás alapjai 1 Rekurzió

BÖLCS BAGOLY LEVELEZŐS MATEMATIKAVERSENY IV. forduló MEGOLDÁSOK

ELEMI PROGRAMOZÁSI TÉTELEK

4. A kézfogások száma pont Összesen: 2 pont

A tanévi matematika OKTV I. kategória első (iskolai) fordulójának pontozási útmutatója

Bevezetés a programozásba I.

Matematika tanmenet 12. osztály (heti 4 óra)

TANMENET. a matematika tantárgy tanításához 10. E.osztályok számára

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

Matematika. 1. évfolyam. I. félév

A félév során előkerülő témakörök

ALGEBRAI KIFEJEZÉSEK, EGYENLETEK

TANMENETJAVASLAT. Dr. Korányi Erzsébet MATEMATIKA. Tankönyv nyolcadikosoknak. címû tankönyveihez

Rendezések. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar október 24.

SPECIÁLIS HELYI TANTERV SZAKKÖZÉPISKOLA. matematika

TANMENET 2015/16. Készítette: KOVÁCS ILONA, Felhasználja: Juhász Orsolya

Az osztályozóvizsgák követelményrendszere 9. évfolyam

Bevezetés a programozásba I 3. gyakorlat. PLanG: Programozási tételek. Programozási tételek Algoritmusok

1. Olvassuk be két pont koordinátáit: (x1, y1) és (x2, y2). Határozzuk meg a két pont távolságát és nyomtassuk ki.

Mit emelj ki a négyjegyűben?

Osztályozó és Javító vizsga témakörei matematikából 9. osztály

illetve a n 3 illetve a 2n 5

Analízis I. beugró vizsgakérdések

TANMENET ... Az iskola fejbélyegzője. a matematika tantárgy. tanításához a 9. a, b osztályok számára

4. Sorozatok. 2. Igazoljuk minél rövidebben, hogy a következő egyenlőség helyes: 100 =

Rekurzió. Dr. Iványi Péter

Informatikai tehetséggondozás:

pontos értékét! 4 pont

Egy halmazt elemei megadásával tekintünk ismertnek. Az elemeket felsorolással,vagy ha lehet a rájuk jellemző közös tulajdonság megadásával adunk meg.

Tanmenet a évf. fakultációs csoport MATEMATIKA tantárgyának tanításához

Átírás:

1 Információk 2 A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin Elérhetőség mesko.katalin@tfk.kefo.hu Fogadóóra: szerda 9:50-10:35 Számonkérés időpontok Április 25. 9 00 Május 17. 9 00 Június 7. 9 00 írásban elégségeshez: 50% Segédanyag www.ketif.hu oldalon A félév célja algoritmikus gondolkodás kifejlesztése Ismétlés Ismétlés II. 3 4 Algoritmus Pontos előírás, amely megmondja, hogy egy adott típushoz tartozó összes feladat megoldásakor a kezdeti adatokon milyen műveleteket milyen meghatározott sorrendben kell elvégezni. Tulajdonságai meghatározott széleskörű véges megvalósítható Algoritmus ábrázolása szerkezeti diagram pszeudo kód Programozás fázisai Problémafelvetés () Specifikáció a további lépések a kódoláshoz kapcsolódnak Ismétlés III. Két egész szám viszonya 5 Határozzuk meg, hogy hogyan viszonyul egymáshoz két egész szám (kisebb, nagyobb egyenlő)! (a, b) a és b vizsgálata Egész a Egész b Be: a Be: b Ha a < b akkor Kiír: a kisebb b-nél // változók definiálása //változók bekérése //1. feltétel //ha az 1. feltétel teljesül : a kisebb b-nél a < b a > b //ha az 1. feltétel nem teljesül Ha a > b akkor //2. feltétel Kiír: a nagyobb b-nél //ha a 2. feltétel teljesül //ha a 2. feltétel nem teljesül : a nagyobb b-nél : a egyenlő b-vel Kiír: a egyenlő b-vel 6

Ismétlés IV. Melyik szám nagyobb? Határozzuk meg, hogy két egész szám közül melyik a nagyobb! (a, b) a és b vizsgálata Egész a Egész b Be: a Be: b Ha a > b akkor Kiír: a nagyobb b-nél // változók definiálása //változók bekérése //1. feltétel //ha az 1. feltétel teljesül //ha az 1. feltétel nem teljesül : a nagyobb b-nél a > b b > a Ha b > a akkor //2. feltétel Kiír: b nagyobb a-nál //ha a 2. feltétel teljesül //ha a 2. feltétel nem teljesül : b nagyobb a-nál : a egyenlő b-vel Kiír: a egyenlő b-vel 7 8 Ismétlés V. Melyik szám kisebb? Határozzuk meg, hogy két egész szám közül melyik a kisebb! (a, b) a és b vizsgálata Egész a Egész b Be: a Be: b Ha a < b akkor Kiír: a kisebb b-nél // változók definiálása //változók bekérése //1. feltétel //ha az 1. feltétel teljesül //ha az 1. feltétel nem teljesül : a kisebb b-nél a < b b < a Ha b < a akkor //2. feltétel Kiír: b kisebb a-nál //ha a 2. feltétel teljesül //ha a 2. feltétel nem teljesül : b kisebb a-nál : a egyenlő b-vel Kiír: a egyenlő b-vel 9 10 Algoritmusok Algoritmusok II. 11 12 Számítsuk ki, hogy a nap két időpontja között mennyi idő telt el! Specifikáció Input két időpont (óra, perc formában) O1, P1, O2, P2 Bemeneti feltétel az óra és perc értékek a valóságnak megfeleljenek Output O és P az eltelt idő Az eltelt idő percben kifejezve (O2 * 60 + P2) (O1 * 60 + P1) = K, ahol K az eltelt idő percben Egész o1, o2, p1, p2 Egész o, p Egész k Be: o1, p1 Be: o2, p2 Vizsgáld meg, hogy helyesek-e az adatok! k = (o2 * 60 + p2) (o1 * 60 + p1) o = k / 60 egészrésze p = k / 60 maradéka Ki: Az eltelt idő:, o, óra és, p, perc.

Eltelt idő Algoritmusok III. 14 K = a különbség percben K = (o2 * 60 + p2) - (o1 * 60 + p1) Számítás o és p kiszámítása O = K / 60 egészrésze P = K / 60 maradéka Határozzuk meg, hogy milyen háromszöget határoz meg három egész szám, mint a háromszög három oldalhosszúsága! Specifikáció Input a, b, c pozitív egész számok Bemeneti feltétel adatok átrendezése szükséges, hogy a b c teljesüljön. Hogyan lehet átrendezni/cserélni az értékeket? Átrendezés után Nem háromszög, ha a b + c Szabályos háromszög, ha a = b és b = c Egyenlőszárú háromszög, ha a = b vagy b = c vagy a = c Derékszögű háromszög, ha a 2 = b 2 + c 2 13 Output A háromszög típusa Algoritmusok IV. Algoritmusok V. 15 16 Egész a, b, c Be: a, b, c Cseréld ki a változók értékét, hogy a b c teljesüljön Ha a b + c akkor Ki: Ez nem háromszög. Ha a = b és b = c akkor Ki: Szabályos háromszög. Ha a = b vagy b = c vagy a = c akkor Ha a 2 = b 2 + c 2 akkor Ki: Egyenlőszárú derékszögű háromszög. Ki: Egyenlőszárú háromszög. Ha a 2 = b 2 + c 2 akkor Ki: Derékszögű háromszög. Ki: Egyéb háromszög. Háromszög Osztályozás a, b, c átrendezése Osztályozás a és b átrendezése a és c átrendezése b és c átrendezése N Sz E D i a < b n i a < c n i b < c n Nem háromszög Szabályos háromszög Egyenlőszárú háromszög Derékszögű háromszög Egyéb D a és b cseréje a és c cseréje b és c cseréje i n m = a 17 a = b b = m m = a a = c c = m m = b b = c c = m 18 Egyenlőszárú derékszögű háromszög Egyenlőszárú háromszög

Sorok, sorozatok Sorok, sorozatok II. 19 20 Dolgok egy listája pl. számok, függvények, betűk, stb. A lista tagjainak sorrendje jól meghatározott Y, C, R nem ugyanaz mint R, Y, C Egy elem többször is előfordulhat Megnevezések Sorozat tagjai elemek Elemek száma sorozat hosszúsága Elemek számától függően Véges sorozat A, B, C, D Végtelen sorozatok pl. a pozitív páros számokból (2, 4, 6 ) képzett sorozat Részsorozat az eredeti sorozat néhány elemének elhagyásával kapjuk az elemek egymáshoz viszonyított sorrendjét nem változtatjuk meg Sorok, sorozatok: Számtani sorozat Sorok, sorozatok: Számtani sorozat II. 21 22 Aritmetikai sorozat Legalább három számból álló (véges, végtelen) sorozat A szomszédos elemek különbsége állandó különbség differencia (d) Példák csupa azonos elemből álló konstans sorozat: 1, 1, 1, 1,... (d = 0) természetes számok sorozata: 0, 1, 2, 3, 4,... (d = 1) páros számok sorozata: 0, 2, 4, 6, 8,... (d = 2) 101, 81, 61, 41, 21, 1, -19,... (d = -20) A számtani sorozat n. eleme a n = d * n + (a 1 d) vagy a n = a 1 + (n - 1) * d; Írjuk ki a számtani sorozat első n db elemét! Egész a1, d Egész ai, i Be: a1 Be: d i vegye fel 1-től db-ig az értékeket és hajtsd végre ai = d * i + (a1 d) Sorok, sorozatok: Számtani sorozat III. 23 Számtani sorozat A ciklus másképpen ai = a1 i vegye fel 1-től db-ig az értékeket és hajtsd végre ai = ai + d; i = 1 db ai = d * i + (a1 d) 24

Sorok, sorozatok: Mértani sorozat Sorok, sorozatok: Mértani sorozat II. 25 26 Legalább három számból álló (véges, végtelen) sorozat A szomszédos elemek (bármelyik tag és az azt megelőző tag) hányadosa állandó hányados kvóciens (q) Példa: csupa azonos elemből álló konstans sorozat: 2, 2, 2, 2,... (q = 1) 2, 6, 18, 54, (q = 3) 90, 30, 10, (q = 1/3) A mértani sorozat n. eleme a n = a 1 *q n-1 : Írjuk ki a mértani sorozat első n db elemét! : Egész a1, q Egész ai, i Be: a1 Be: q i vegye fel 1-től db-ig az értékeket és hajtsd végre ai = a1 * q i-1 Sorok, sorozatok: Mértani sorozat III. 27 A ciklus másképpen Mértani sorozat ai = a1 i vegye fel 1-től db-ig az értékeket és hajtsd végre i = 1 db ai = ai * q; ai = a1 * q i-1 28 Sorok, sorozatok: Fibonacci sorozat Sorok, sorozatok: Fibonacci sorozat II. 29 30 Az első két elem 0 és 1 A további elemeket az előző kettő összegeként kapjuk Fibonacci-sorozat első néhány eleme: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, A Fibonacci sorozat n. eleme a n = a n 1 + a n 2 Természetben megfigyelt Fibonacci-számok Írjuk ki a Fibonacci sorozat első n db elemét! Egész a1, a2 Egész ai, i a1 = 0 a2 = 1 Ki: A sorozat 1. eleme, a1 Ki: A sorozat 2. eleme, a2 i vegye fel 3-tól db-ig az értékeket és hajtsd végre ai = a i-1 + a i-2

Sorozatok összegzése Fibonacci sorozat i = 3 db 32 Nevezetes sorozatok összegzése az első n elem összege Számtani sorozat első n elemének összege ((a 1 + a n ) * n) / 2 a i = a i-1 + a i-2 Mértani sorozat első n elemének összege (a 1 * (q n 1)) / (q 1) 31 Sorozatok összegzése II. Számtani sorozat összegzése 33 Határozzuk meg egy számtani sorozat első n db elemének összegét! Egész a1, an Egész d Egész összeg Be: a1 Be: d an = d * db + (a1 d) összeg = ((a1 + an) * db) / 2 Ki: A mértani sorozat első n elemének összege:, összeg an kiszámítása an = d * n + (a1 d) Számítás Összeg kiszámítása összeg = ((a1 + an) * n) / 2 34 Sorozatok összegzése III. 35 Határozzuk meg egy mértani sorozat első n db elemének összegét! Mértani sorozat összegzése Egész a1 Egész q Egész összeg Be: a1 Be: q összeg = (a1 * (q db 1)) / (q 1) Ki: A számtani sorozat első n elemének összege:, összeg Számítás Összeg kiszámítása összeg = (a1 * (q db 1)) / (q 1) 36

Sorozatok összegzése IV. Sorozatok összegzése V. 37 38 Határozzuk meg egy egész számsorozat legkisebb és legnagyobb elemét, valamint a sorozat átlagát! Specifikáció Input számsorozat, melyet egy végjel zár le, amit a felhasználó ad meg a számsorozat előtt Egész szám, végjel Egész min, max, átlag, db, összeg Be: végjel, szám összeg = 0 db = 0 max = szám min = szám Amíg a szám <> végjel addig hajtsd végre összeg = összeg + szám db = db + 1 Ha a szám < min akkor min = szám egyébként Ha szám > max akkor max = szám Be: szám Ha db = 0 akkor Ki: Üres sorozat. egyébként átlag = összeg / db Ki: A megadott számsorozat minimuma, maximuma és átlaga:, min, max, átlag Min-max-átlag Prímszámkeresés Erathosztenész szitájával 40 Inicializálás szám <> végjel Szám feldolgozása (szám) szám < min Összeg és db feldolgozása szám > max min = szám max = szám 39 Ezzel a módszerrel meghatározhatjuk az n-nél nem nagyobb prímszámokat 1. lépés Írjuk fel egy tetszőlegesen nagy n-ig az 1-nél nagyobb természetes számokat 2. lépés A 2 kivételével töröljük közülük a 2-vel oszthatóakat 3. lépés A megmaradó számok közül a legkisebbel, a 3-al megismételjük az előző eljárást 4. lépés Folytatjuk a fenti módszert, amíg van nem törölt szám 5. lépés A megmaradó számok az n-nél nem nagyobb prímszámok lesznek Faktoriális számítása 41 Faktoriális n! n faktoriális, ahol n 0 egész szám n! = 1 * 2 * 3 * 4 * * n Faktoriális kiszámítása Határozzuk meg n! értékét! Egész n, fakt Egész i Be: n fakt = 1 i vegye fel 1-től n-ig az értékeket és hajtsd végre fakt = fakt * i Ki: A faktoriális értéke:, fakt i = 1 n fakt = fakt * i 42

Faktoriális alkalmazása n alatt k Faktoriális alkalmazása n alatt k II. 43 44 Határozzuk meg n alatt k értékét! n alatt k = n! / (k! * (n k)!) nem célszerű a faktoriálisokat egyenként kiszámolni, mert ezek nagy értékek lennének a nevező egyik tényezőjével tudunk egyszerűsíteni Egész n, k Egész nak Egész i Be: n, k Ha n k és k 1 akkor nak = 1 i vegye fel 1-től k-ig az értékeket és hajtsd végre nak = nak * (n i + 1) / i Ki: n alatt k értéke:, nak Ki: Nem megfelelő értékeket adott meg. További algoritmusok n alatt k 46 Matematikai algoritmusok n k és k 0 Másodfokú egyenlet gyökeinek meghatározása A legnagyobb közös osztó meghatározása Számrendszerek közötti átváltások (2-16) Különböző számrendszereken (2-10) belül végzett műveletek nak = 1 i = 1 k Rendezések Nem matematikai algoritmusok nak = nak * (n i + 1) / i Szöveges (string) típusú változók alkalmazása és ezekkel kapcsolatos műveletek problémái 45 Köszönöm a figyelmet!