Rekurzió. Tartalomjegyzék. Készítette: Gál Tamás
|
|
- Ignác Gáspár
- 8 évvel ezelőtt
- Látták:
Átírás
1 Rekurzió Tartalomjegyzék Rekurzió..2 Kérdések, feladatok2 Hatványozás rekurzióval.3 Faktoriális számítás rekurzióval..4 Kérdések, feladatok5 Fibonacci sorozat.6 Kérdések, feladatok6 QuickSort (gyorsrendezés).7 Kérdések, feladatok9 Iteratív bináris keresés10 Rekurzív bináris keresés12 Hanoi-tornyai..14 Kérdések, feladatok.17 Készítette: Gál Tamás Közzétéve: Creative Commons -Nevezd meg!-ne add el!-így add tovább! 2.5 Magyarország licenc alatt használható GT Rekurzió 1
2 Rekurzió Rekurzióról beszélünk, ha egy eljárás, függvény vagy metódus közvetve vagy közvetlenül önmagát hívja. Rekurzió célja egy összetett feladat visszavezetése egyszerűbb feladatok ismételt megoldására. Egy alprogram működése változatlan, de mindig saját magát hívja, de egyre egyszerűbb argumentumokkal. A ciklusokhoz hasonló módon rekurzió esetén is gondoskodni kell arról, hogy véges lépésszám után leálljon az alprogram ismételt meghívása, különben a program a végtelen ciklushoz hasonló módon viselkedik. A következő példakód hasonlóképp működik mint egy növekményes ciklus, amelynek ciklusváltozója 10-től indulva 1-ig csökken (0-nál kilép). Először meghívva az eljárást i=10. Ezt képernyőre írja, majd 1-el kisebb értékkel hívja saját magát. Mindaddig ismétli a folyamatot (kiírás, saját maga meghívása) amíg i>0. 0-nál leáll. Mondatszerű leírás: Függvény ismétel(i:egész típus): Ha i>0 akkor KI: i ismétel(i-1) Elágazás vége Függvény vége. Pascal kód: program Rekurzio; procedure ismetel(i:integer); if i>0 then writeln(i); ismetel(i-1); ismetel(10); Java kód: public static void main(string[] args) ismetel(10); static void ismetel(int i) if (i>0) System.out.println(i); ismetel(i-1); Kérdések, feladatok Módosítsd az ismetel nevű eljárást, úgy GT Rekurzió 2
3 Hatványozás rekurzióval Specifikáció: x n = x * xn-1 ha n > 0 1 ha n = 0 Mondatszerű leírás: Függvény Hatvány(x: valós, n: egész): valós Ha n > 0 akkor Hatvány := x * Hatvány(x, n-1) különben Hatvány := 1 Elágazás vége Függvény vége. Pascal kód: program Hatvanyozas; function hatvany(x:double; n:integer): Double; if n>0 then hatvany := x * hatvany(x, n-1) hatvany := 1; writeln('x:',x:3:0,' n:',n:2,' hatvány:',hatvany:4:0) writeln(hatvany(2,10):4:0); Java kód: public static void main(string[] args) System.out.println(hatvany(2,10)); static float hatvany(float x, int n) if (n>0) return x * hatvany(x, n-1); return 1; GT Rekurzió 3
4 Faktoriális számítás rekurzióval Az n N faktoriális (jelölés: n!) alatt az első n darab pozitív természetes szám szorzatát értjük, n=0 esetén pedig 1-et. Specifikáció: n! = n * (n 1)! ha n > 0 1 ha n = 0 Mondatszerű leírás: Függvény Faktoriális(n: egész): egész Ha n > 0 akkor Faktoriális := n * Faktoriális(n 1) különben Faktoriális := 1 Elágazás vége Függvény vége. Működés n=4 esetén: Faktoriális(4) = 4 * Faktoriális(3) = (verembe: 4, és visszatérési cím) 3 * Faktoriális(2) = (verembe: 3, és visszatérési cím) 2 * Faktoriális(1) = (verembe: 2, és visszatérési cím) 1 * Faktoriális(0) (verembe: 1, és visszatérési cím) Faktoriális(0)=1 1 * Faktoriális(0) (1*1= 1) (veremből: 1, és visszatérési cím) 2 * Faktoriális(1) = (2*1= 2) (veremből: 2, és visszatérési cím) 3 * Faktoriális(2) = (3*2= 6) (veremből: 3, és visszatérési cím) 4 * Faktoriális(3) = (4*6=24) (veremből: 4, és visszatérési cím) Faktoriális(4) = 24 [forrás: Petrik tananyagtár: Rekurzió] A rekurzió folyamata: a függvény a faktoriális számítását visszavezeti 1-gyel kisebb egész szám faktoriálisának a kiszámítására, amíg lehet. a számítás elvégzése közben újra és újra meghívja magát, miközben a számítás folytatásához szükséges értékeket és a visszatérési címeket verembe teszi. a folyamat legalsó szintjét a Faktoriális(0) jelenti, amelynek az értéke definíció szerint 1, itt ér véget a rekurzív hívások sorozata. ezután folyamatos visszahelyettesítések következnek, a folyamat minden szintjén, és a legfelső szinten meghatározásra kerül n! értéke. [forrás: Petrik tananyagtár: Rekurzió] GT Rekurzió 4
5 Pascal kód: program Faktorialis1; function Faktorialis(n:integer): integer; if n>0 then Faktorialis := n * Faktorialis(n - 1) Faktorialis := 1; writeln(faktorialis); writeln(faktorialis(4)); Java kód: public static void main(string[] args) System.out.println(Faktorialis(5)); static int Faktorialis(int n) if (n>0) return n * Faktorialis(n-1); return 1; Kérdések, feladatok Módosítsd az Faktorialis nevű alprogramot úgy, hogy a képernyőn visszatérés előtt jelenítse meg visszatérési értékét! A Faktorialis nevű alprogram hányszor hívja meg saját magát, ha n paraméterének értéke kezdetben 5? GT Rekurzió 5
6 Fibonacci sorozat A Fibonacci-sorozat első két eleme 0 és 1, a további elemeket az előző kettő összegeként kapjuk. Specifikáció: Fibonacci n = Fibonacci n-1 + Fibonacci n-2 ha n > 1 n ha n=0 n ha n=1 Mondatszerű leírás: Függvény Fibonacci(n: egész): egész Ha n > 1 akkor Fibonaccin := Fibonacci(n - 1) + Fibomacchi(n - 2) különben Fbonacchi := n Elágazás vége Függvény vége Pascal kód: program Fibonacci1; function Fibonacci(n:integer): integer; if n>1 then Fibonacci := Fibonacci(n - 1) + Fibonacci(n - 2) Fibonacci := n; writeln(fibonacci(4)); Java kód: public static void main(string[] args) System.out.println(Fibonacci(5)); static int Fibonacci(int n) if (n>1) return Fibonacci(n - 1) + Fibonacci(n - 2); return n; Kérdések, feladatok Módosítsd az Fibonacci nevű alprogramot úgy, hogy a képernyőn visszatérés előtt jelenítse meg visszatérési értékét! A Faktorialis nevű alprogram hányszor hívja meg saját magát, ha n paraméterének értéke kezdetben 6? GT Rekurzió 6
7 QuickSort (gyorsrendezés) A leghatékonyabb rendezési algoritmus. A tömb számtanilag középső elemét kiemelve, balról megkeressük az első olyan elemet, amely nagyobb vagy egyenlő a középső elemmel, majd jobbról az első kisebb vagy egyenlő elemet. Ha találunk 2 megfelelő elemet, akkor kicseréljük. A ciklus végére a kiemelt elemtől balra csak nála kisebb, jobbra pedig nagyobb elemek állnak. Rekurzív módon megismételjük a folyamatot a bal és a jobb oldali tartományra is. Egy sorozat rendezését rendre két kisebb részének rendezésére vezetjük vissza. Specifikáció: a:tömb(n) a rendezendő tömb Bal, Jobb: egészek a szétválogatásra kerülő rész eleje és vége, bemenő paraméterek k: egész az elválasztó elem pozíciója, kimenő paraméter Mondatszerű leírás: Eljaras Quicksort(Bal, Jobb) i := Bal j := Jobb Kozepsokulcs := A[(i+j)/2] Ciklus amíg i <= j Ciklus amíg A[i].K< Kozepsokulcs i := i + 1 Ciklus vége Ciklus amíg A[j].K > Kozepsokulcs j := j - 1 Ciklus vége Ha i<j akkor Csere( A[i], A[j] ) i:=i+1 j:=j-1 Elágazás vége Ciklus vége Ha Bal < j akkor Quicksort(Bal, j-1) Ha i < Jobb akkor Quicksort(i+1, Jobb) Eljárás vége GT Rekurzió 7
8 Pascal kód: Program QuicksortPrg; const n = 5; a: array[1..n] of integer = (135,50,-42,44,21); i, k: integer; procedure quicksort(bal,jobb:integer); i,j,k,pivot,x:integer; i:=bal; j:=jobb; Pivot:=a[(i+j) div 2]; while i<=j do while a[i]<pivot do inc(i); while a[j]>pivot do dec(j); if i<=j then x:=a[i]; a[i]:=a[j]; a[j]:=x; inc(i); dec(j); if Bal<j then quicksort(bal,j); if i<jobb then quicksort(i,jobb); quicksort(1,n); for i:=1 to n do writeln(i,'. elem:',a[i]); Java kód: public static void main(string[] args) int[] a = 135,50,-42,44,21; quicksort(a,0,a.length-1); System.out.println(a); for(int i:a) System.out.print(i); System.out.print(" "); static void quicksort(int[] a, int lowerindex, int higherindex) int i = lowerindex; int j = higherindex; int pivot = a[lowerindex+(higherindex-lowerindex)/2]; while (i <= j) while (a[i] < pivot) i++; while (a[j] > pivot) j--; if (i <= j) int temp = a[i]; a[i] = a[j]; a[j] = temp; i++; j--; if (lowerindex < j) quicksort(a, lowerindex, j); if (i < higherindex) quicksort(a, i, higherindex); GT Rekurzió 8
9 Ajánlott: %20Tovabbkepzes/06/05_01_Rendez%E9sek_2.pdf Kérdések, feladatok Módosítsd az quicksort nevű alprogramot úgy, hogy csökkenő sorrendbe rendezze a tömb elemeit! Módosítsd az quicksort nevű alprogramot úgy, hogy minden meghívásakor megjelenítse paraméterként kapott tömbindexeket, a kiemelt tömbelem értékét, és a tömbelemek aktuális sorrendjét! Legalább 2 számsor esetén írd le füzetedbe az megjelenített adatokat áttekinthető formában és jelöld a változásokat. GT Rekurzió 9
10 Iteratív bináris keresés Rendezett tömbben nagyon gyors keresés tesz lehetővé. Megvizsgálja a tömb középső elemét. Három eset lehetséges: megtalálta a keresett elemet >> visszaadja indexét kisebb a kereset elemnél >> a tömbnek már csak az aktuális elemet követő részét vizsgálja nagyobb a kereset elemnél >> a tömbnek már csak az aktuális elemet megelőző részét vizsgálja Specifikáció: a: tömb(n) a rendezett tömb Elso,Utolso: egészek a vizsgált kerülő rész eleje és vége, bemenő paraméterek keresett: egész a keresett érték, bemenő paraméter Van: logikai cím szerint átadott paraméter Index: egész cím szerint átadott paraméter a kereset elem indexe Mondatszerű leírás: ciklus amíg első <= utolsó és van = hamis Középső := (Első + Utolsó) Div 2 Ha keresett = t[középső] akkor van := igaz index := középső ha Keresett < t[középső] akkor utolsó := Középső - 1 Ellenben Első := Középső + 1 Ha vége ciklus vége Pascal kód: Program BinarisKeresesPRG; const n = 5; type TmbTip = array[1..n] of integer; a: array[1..n] of integer = (-42,21,44,50,135); i, k, SORSZ: integer; OK : boolean; Procedure BinarisKereses(n:Integer; keresett:integer; Var a:tmbtip; Var Van:Boolean; Var Index:Integer); Elso,Utolso,Kozep:Integer; Elso:=1; Utolso:=n; Van:=false; while ((Elso<=Utolso) AND (Van=false)) do kozep:= (Elso+Utolso ) div 2; If keresett=a[kozep] then Van:=true; Index:=kozep; end If keresett<a[kozep] then Utolso:=kozep-1 Elso :=kozep+1; GT Rekurzió 10
11 BinarisKereses(n,135,a,OK,SORSZ); if (OK) then writeln('sorszám:',sorsz); for i:=1 to n do writeln(i,'. elem:',a[i]); Java kód: public static void main(string[] args) int[] a = -42,21,44,50,135; int index = BinarisKereses(a,a.length-1,44); System.out.println(a); for(int i:a) System.out.print(i); System.out.print(" "); System.out.println(" "); System.out.print(index); static int BinarisKereses(int[] a, int n, int keresett) int bal = 0; int jobb = n - 1; for(int kozep = (bal+jobb)/2; bal <= jobb; kozep = (bal+jobb)/2) if (a[kozep] == keresett) return kozep; if (keresett < a[kozep]) jobb = kozep - 1; bal = kozep + 1; return -1; GT Rekurzió 11
12 Rekurzív bináris keresés Ha a középső elem kisebb vagy nagyobb a keresettnél, akkor rekurzív hívásokkal vizsgáljuk a tömb mögötte vagy előtte található elemeit. Specifikáció: a: tömb(n) a rendezett tömb bal, jobb: egészek a vizsgált kerülő rész eleje és vége, bemenő paraméterek keresett: egész a keresett érték, bemenő paraméter visszatérési érték a keresett elem pozíciója, ha nem található, akkor -1 Mondatszerű leírás: Függvény RekurzivBinKer(a: tömb; keresett, bal, jobb: egész): egész Ha jobb < bal akkor RekurzivBinKer := -1 különben kozep := (bal + jobb) / 2; Ha (a[kozep] = keresett) akkor RekurzivBinKer := kozep különben Ha (keresett < a[kozep]) akkor RekurzivBinKer := RekurzivBinKer(a, keresett, bal, kozep 1) különben RekurzivBinKer := RekurzivBinKer(a, keresett, kozep + 1, jobb); Elágazás vége Elágazás vége Elágazás vége Függvény vége Pascal kód: Program BinarisKeresesPRG; const n = 5; type TmbTip = array[1..n] of integer; a: array[1..n] of integer = (-42,21,44,50,135); i, k, Index: integer; OK : boolean; function RekurzivBinKer(Var a:tmbtip; keresett, bal, jobb:integer): integer; kozep:integer; if (jobb < bal) then RekurzivBinKer := -1 kozep := (bal + jobb) div 2; if (a[kozep] = keresett) then RekurzivBinKer := kozep if (keresett < a[kozep]) then RekurzivBinKer := RekurzivBinKer(a, keresett, bal, kozep - 1) RekurzivBinKer := RekurzivBinKer(a, keresett, kozep + 1, jobb); Index := RekurzivBinKer(a,135,0,n); if Index>-1 then writeln('sorszám:',index) writeln('nincs'); for i:=1 to n do writeln(i,'. elem:',a[i]); GT Rekurzió 12
13 Java kód: public static void main(string[] args) int[] a = -42,21,44,50,135; int index = RekurzivBinKer(a,50,0,a.length-1); System.out.println(a); for(int i:a) System.out.print(i); System.out.print(" "); System.out.println(" "); System.out.print(index); static int RekurzivBinKer(int[] a, int keresett, int bal, int jobb) if (jobb < bal) return -1; int kozep = (bal + jobb) / 2; if (a[kozep] == keresett) return kozep; if (keresett < a[kozep]) return RekurzivBinKer(a, keresett, bal, kozep - 1); return RekurzivBinKer(a, keresett, kozep + 1, jobb); GT Rekurzió 13
14 Hanoi-tornyai A játék szabályai szerint az első rúdról az utolsóra kell átrakni a korongokat úgy, hogy minden lépésben egy korongot lehet áttenni, nagyobb korong nem tehető kisebb korongra, és ehhez összesen három rúd áll rendelkezésre. Specifikáció: n: korong(ok) száma Forras: melyik pálcáról kell, hogy átrakjuk a korongokat Cel: melyik pálcára kell, hogy átrakjuk a korongokat Seged: melyik pálca segítségével rakjuk át a korongokat Mondatszerű leírás: Eljárás Hanoi(n, Forras, Cel, Seged) Ha n > 0 akkor Hanoi(n-1, Forras, Seged, Cel) KI: n korongot Forras > Cel Ha n > 0 akkor Hanoi(n-1, Seged, Cel, Forras) Eljárás vége program HanoiPrg; Procedure Hanoi(n,Forras,Seged,Cel:integer); Begin if n>0 then Hanoi(n-1,Forras,Cel,Seged); Writeln(n,'. korongot ',Forras,'. rúdról ',Cel,'. rúdra!'); if (n > 1) then Hanoi(n-1,Seged,Cel,Forras); End; Hanoi(3,1,2,3); program HanoiPrg; procedure Hanoi(i, n: integer; Forras, Cel, Seged: char); i:=i+1; writeln('i:',i,' n:',n,' Forras:', Forras, ' Cel:', Cel, ' Seged:',Seged); if n > 0 then ha van korong Hanoi(i,n-1, Forras, Seged, Cel); n-1 -et a 'tanitvany' átrak a Seged-re writeln(n:2,'. ',Forras,'->',Cel); helyere rakjuk az felsőt Hanoi(i,n-1, Seged, Cel, forras); a 'tanitvany' a Seged-ről a helyére tesz end Hanoi(0,3,'A','B','C'); GT Rekurzió 14
15 Hanoi-tornyai Hanoi-tornyai játék rúdjaira mindig csak felülről helyezhetünk új korongokat, és csak a legfelsőt tudjuk leemelni. Ez a megfelel a verem memóriák működésének. A következő program minden rúdhoz egy rekordot rendel, amiben külön mező tárolja a veremmutató értékét, a másik mezőben található tömb pedig a benne elhelyezett korongok sorszámát. A Push eljárás az adott verem tetejére helyezi a paraméterben kapott sorszámot, és növeli a veremmutatót, ha még nem értük el a verem tetejét. A Pop függvény az adott verem tetejéről leveszi az ott található sorszámot, és csökkenti a veremmutatót, feltéve ha verem nem üres. program HanoiVerem; const db = 4; type VeremT=Record Mut:integer; Elemek:array[1..db] of integer; AVerem, BVerem, CVerem: VeremT; procedure InitVermek; i : integer; Averem.Mut := db; Bverem.Mut := 0; Cverem.Mut := 0; for i:=1 to db do Averem.Elemek[i] := i; Bverem.Elemek[i] := 0; Cverem.Elemek[i] := 0; procedure PushA (n:integer); if Averem.Mut<db+1 then Averem.Mut := Averem.Mut + 1; Averem.Elemek[Averem.Mut] := n; function PopA: integer; if Averem.Mut>0 then PopA := Averem.Elemek[Averem.Mut]; Averem.Elemek[Averem.Mut] := 0; Averem.Mut := Averem.Mut - 1; end PopA := 0; GT Rekurzió 15
16 procedure KiirAverem; i : integer; for i:= 1 to db do write(averem.elemek[i]); writeln(); procedure PushB (n:integer); if Bverem.Mut<db+1 then Bverem.Mut := Bverem.Mut + 1; Bverem.Elemek[Bverem.Mut] := n; function PopB: integer; if Bverem.Mut>0 then PopB := Bverem.Elemek[Bverem.Mut]; Bverem.Elemek[Bverem.Mut] := 0; Bverem.Mut := Bverem.Mut - 1; end PopB := 0; procedure KiirBverem; i : integer; for i:= 1 to db do write(bverem.elemek[i]); writeln(); procedure PushC (n:integer); if Cverem.Mut<db+1 then Cverem.Mut := Cverem.Mut + 1; Cverem.Elemek[Cverem.Mut] := n; function PopC: integer; if Cverem.Mut>0 then PopC := Cverem.Elemek[Cverem.Mut]; Cverem.Elemek[Cverem.Mut] := 0; Cverem.Mut := Cverem.Mut - 1; end PopC := 0; procedure KiirCverem; i : integer; for i:= 1 to db do write(cverem.elemek[i]); writeln(); procedure Atrak(Forras, Cel:char); n:integer; Case Forras of 'A' : n := PopA; 'B' : n := PopB; GT Rekurzió 16
17 'C' : n := PopC; Case Cel of 'A' : PushA(n); 'B' : PushB(n); 'C' : PushC(n); writeln('átrak ', Forras, '(',n,') >', Cel); KiirAverem; KiirBverem; KiirCverem; writeln(); procedure Hanoi(i, n: integer; Forras, Cel, Seged: char); i:=i+1; writeln('i:',i,' n:',n,' Forras:', Forras, ' Cel:', Cel, ' Seged:',Seged); if n > 0 then ha van korong Hanoi(i,n-1, Forras, Seged, Cel); Atrak(Forras, Cel); Hanoi(i,n-1, Seged, Cel, forras); end InitVermek; KiirAverem; Hanoi(0,db,'A','B','C','D'); KiirAverem; KiirBverem; KiirCverem; Kérdések, feladatok Próbáld ki a HanoiVerem nevű programot! Ellenőrizd működését 3,4 és 5 korong esetén! Készítsd el a verem memóriákat kezelő alprogramok mondatszerű leírásait! GT Rekurzió 17
Rekurzív algoritmusok
Rekurzív algoritmusok 11. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. november 14. Sergyán (OE NIK) AAO 11 2011. november 14. 1 / 32 Rekurzív
A félév során előkerülő témakörök
A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok
REKURZIÓ. Rekurzív: önmagát ismétlő valami (tevékenység, adatszerkezet stb.) Rekurzív függvény: függvény, amely meghívja saját magát.
1. A REKURZIÓ FOGALMA REKURZIÓ Rekurzív: önmagát ismétlő valami (tevékenység, adatszerkezet stb.) Rekurzív függvény: függvény, amely meghívja saját magát. 1.1 Bevezető példák: 1.1.1 Faktoriális Nemrekurzív
Felvételi vizsga mintatételsor Informatika írásbeli vizsga
BABEȘ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR A. tételsor (30 pont) Felvételi vizsga mintatételsor Informatika írásbeli vizsga 1. (5p) Egy x biten tárolt egész adattípus (x szigorúan pozitív
Adatbázis rendszerek Gy: Algoritmusok C-ben
Adatbázis rendszerek 1. 1. Gy: Algoritmusok C-ben 53/1 B ITv: MAN 2015.09.08 Alapalgoritmusok Összegzés Megszámlálás Kiválasztás Kiválasztásos rendezés Összefésülés Szétválogatás Gyorsrendezés 53/2 Összegzés
Adatszerkezetek és algoritmusok
Adatszerkezetek és algoritmusok 1 Bevezetés Adatszerkezet egyszerű vagy összetett alapadatok rendszerének matematikai, logikai modellje elég jó ahhoz, hogy tükrözze a valós kapcsolatokat elég egyszerű
Eljárások, függvények
Eljárások, függvények Tartalomjegyzék Az alprogramok...2 Kérdések, feladatok...2 Kérdések, feladatok...3 Eljárások...3 Kérdések, feladatok...4 Érték és cím szerinti paraméterátadás...5 Kérdések, feladatok...6
INFORMATIKA javítókulcs 2016
INFORMATIKA javítókulcs 2016 ELMÉLETI TÉTEL: Járd körbe a tömb fogalmát (Pascal vagy C/C++): definíció, egy-, két-, több-dimenziós tömbök, kezdőértékadás definíciókor, tömb típusú paraméterek átadása alprogramoknak.
Közismereti informatika 2.zh T-M szakirány
1. feladat: Az alábbi algoritmus egy szövegnek meghatározza a leghosszabb szavát és annak hosszát. Írja át időben hatékonyabbra! Írja meg az időben hatékonyabb Pascal programot! Eljárás Maxkiv(S:Szöveg;
2. Milyen értéket határoz meg az alábbi algoritmus, ha A egy vektor?. (2 pont)
A Név: l 2017.04.06 Neptun kód: Gyakorlat vezet : HG BP l 1. Az A vektor tartalmát az alábbi KUPACOL eljárással rendezzük át maximum kupaccá. A={28, 87, 96, 65, 55, 32, 51, 69} Mi lesz az értéke az A vektor
// keressük meg a legnagyobb faktoriális értéket, ami kisebb, // mint százmillió
BME MOGI Gépészeti informatika 3. 1. feladat Végezze el a következő feladatokat! Kérjen be számokat 0 végjelig, és határozza meg az átlagukat! A feladat megoldásához írja meg a következő metódusokat! a.
I. Egydimenziós tömb elemeinek rendezése
I. Egydimenziós tömb elemeinek rendezése 1. Adott egy egész számokból álló sorozat. Rendezzük növekvő sorrendbe az elemeit! Buborékrendezés. A tömb elejétől a vége felé haladva összehasonlítjuk a szomszédos
Programozás alapjai. 5. előadás
5. előadás Wagner György Általános Informatikai Tanszék Cserélve kiválasztásos rendezés (1) A minimum-maximum keresés elvére épül. Ismétlés: minimum keresés A halmazból egy tetszőleges elemet kinevezünk
14. Mediánok és rendezett minták
14. Mediánok és rendezett minták Kiválasztási probléma Bemenet: Azonos típusú (különböző) elemek H = {a 1,...,a n } halmaza, amelyeken értelmezett egy lineáris rendezési reláció és egy i (1 i n) index.
end function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t..
A Név: l 2014.04.09 Neptun kód: Gyakorlat vezető: HG BP MN l 1. Adott egy (12 nem nulla értékû elemmel rendelkezõ) 6x7 méretû ritka mátrix hiányos 4+2 soros reprezentációja. SOR: 1 1 2 2 2 3 3 4 4 5 6
Ö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.
Összetett programozási tételek Sorozathoz sorozatot relő feladatokkal foglalkozunk. A bemenő sorozatot le kell másolni, s közben az elemekre vonatkozó átalakításokat lehet végezni rajta: Input : n N 0,
Információs Technológia
Információs Technológia Rekurzió, Fa adatszerkezet Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. november 18. Rekurzió Rekurzió
Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez
Pásztor Attila Algoritmizálás és programozás tankönyv az emeltszintű érettségihez 9. ÖSSZETETT FELADATOK...111 9.1. ELEMI ALGORITMUSOK ÖSSZEÉPÍTÉSE...111 9.2. ÖSSZEFOGLALÁS...118 9.3. GYAKORLÓ FELADATOK...118
BME MOGI Gépészeti informatika 5.
BME MOGI Gépészeti informatika 5. 1. feladat Készítsen alkalmazást, mely feltölt egy egydimenziós tömböt adott tartományba eső, véletlenszerűen generált egész értékekkel! Határozza meg a legkisebb és a
BBTE Matek-Infó verseny mintatételsor Informatika írásbeli vizsga
BABEȘ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR A. tételsor (30 pont) 1. (5p) Tekintsük a következő alprogramot: Alprogram f(a): Ha a!= 0, akkor visszatérít: a + f(a - 1) különben visszatérít
Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)
Adatszerkezetek Nevezetes algoritmusok (Keresések, rendezések) Keresések A probléma általános megfogalmazása: Adott egy N elemű sorozat, keressük meg azt az elemet (határozzuk meg a helyét a sorozatban),
A programozás alapjai 1 Rekurzió
A programozás alapjai Rekurzió. előadás Híradástechnikai Tanszék - preorder (gyökér bal gyerek jobb gyerek) mentés - visszaállítás - inorder (bal gyerek gyökér jobb gyerek) rendezés 4 5 6 4 6 7 5 7 - posztorder
Programozási segédlet
Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen
BABEŞ-BOLYAI TUDOMÁNYEGYETEM MATEMATIKA-INFORMATIKA KAR Felvételi verseny - minta Informatika írásbeli
BABEŞ-BOLYAI TUDOMÁNYEGYETEM MATEMATIKA-INFORMATIKA KAR Felvételi verseny - minta Informatika írásbeli A versenyzők figyelmébe: 1. Minden tömböt 1-től kezdődően indexelünk. 2. A rácstesztekre (A rész)
Egyszerű programozási tételek
Egyszerű programozási tételek Sorozatszámítás tétele Például az X tömbben kövek súlyát tároljuk. Ha ki kellene számolni az összsúlyt, akkor az S = f(s, X(i)) helyére S = S + X(i) kell írni. Az f0 tartalmazza
Algoritmusokfelülnézetből. 1. ELŐADÁS Sapientia-EMTE
Algoritmusokfelülnézetből 1. ELŐADÁS Sapientia-EMTE 2015-16 Algoritmus Az algoritmus kifejezés a bagdadi arab tudós, al-hvárizmi(780-845) nevének eltorzított, rosszul latinra fordított változatából ered.
Algoritmizálás és adatmodellezés tanítása 1. előadá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
Algoritmusok - pszeudókód... 1
Tartalomjegyzék Algoritmusok - pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 1 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 2 Minimum
BME MOGI Gépészeti informatika 4.
BME MOGI Gépészeti informatika 4. 1. feladat önálló feladatmegoldás Generáljon két 1 és 10 közötti véletlen egész számot, majd kiírja ezekre a számokra a tízes szorzótáblákat! Ha az első generált szám
6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok
6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok 1. feladat: Az EURO árfolyamát egy negyedéven keresztül hetente nyilvántartjuk (HUF / EUR). Írjon C programokat az alábbi kérdések
Felvételi tematika INFORMATIKA
Felvételi tematika INFORMATIKA 2016 FEJEZETEK 1. Természetes számok feldolgozása számjegyenként. 2. Számsorozatok feldolgozása elemenként. Egydimenziós tömbök. 3. Mátrixok feldolgozása elemenként/soronként/oszloponként.
Bánsághi Anna 2014 Bánsághi Anna 1 of 68
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív
Algoritmusok és adatszerkezetek gyakorlat 03 Oszd meg és uralkodj. Nagy
Algoritmusok és adatszerkezetek gyakorlat 03 Oszd meg és uralkodj Divide & Conquer (,,Oszd meg és uralkodj ) paradigma Divide: Osszuk fel az adott problémát kisebb problémákra. Conquer: Oldjuk meg a kisebb
Egyszerű programok készítése... 56 Kifejezések... 57 Bitszintű műveletek... 57 Relációs műveletek... 58
Tartalomjegyzék Algoritmusok - pszeudókód... 1 Abszolút érték... 1 Hányados ismételt kivonással... 1 Legnagyobb közös osztó... 1 Páros számok szűrése... 2 Palindrom számok... 2 Orosz szorzás... 3 Minimum
Tartalomjegyzék Algoritmusok - pszeudókód... 1 42
Tartalomjegyzék Algoritmusok - pszeudókód... 1 42 Abszolút érték...1 Hányados ismételt kivonással...1 Legnagyobb közös osztó... 1 2 Páros számok szűrése...2 Palindrom számok...2 Orosz szorzás...3 Minimum
Alkalmazott modul: Programozás 4. előadás. Procedurális programozás: iteratív és rekurzív alprogramok. Alprogramok. Alprogramok.
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás 4. előadás Procedurális programozás: iteratív és rekurzív alprogramok Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
Algoritmuselmélet 2. előadás
Algoritmuselmélet 2. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Február 12. ALGORITMUSELMÉLET 2. ELŐADÁS 1 Buborék-rendezés
Webprogramozás szakkör
Webprogramozás szakkör Előadás 5 (2012.04.09) Programozás alapok Eddig amit láttunk: Programozás lépései o Feladat leírása (specifikáció) o Algoritmizálás, tervezés (folyamatábra, pszeudokód) o Programozás
Megoldott feladatok. Informatika
Megoldott feladatok Informatika I.81. Egy autóbuszjegyen az n*n-es négyzethálóban összesen k lyukasztás lehet. Ha a buszjegyet fordítva helyezzük a lyukasztóba, akkor a jegy tükörképét kapjuk. (Csak egyféleképpen
Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar
Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 0.1. Az algoritmikus tudás szintjei Ismeri (a megoldó algoritmust) Érti Le tudja pontosan
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
Rendezések Feladat Rendezési algoritmusok kipróbálása, hatékonysági viselkedésének vizsgálata. A rendezések egy ElemSzam méretü r tömben történik. Többféle föltöltés közül lehet választani: o a növekvően
6. A Pascal nyelv utasításai
6. A Pascal nyelv utasításai Írjunk programot, amely beolvas két valós számot és a két szám közül a kisebbikkel osztja a nagyobbikat! (felt0) program felt0; szam1, szam2, eredmeny : real; writeln('kérek
Objektumorientált Programozás VI.
Objektumorientált Programozás Metódusok Paraméterek átadása Programozási tételek Feladatok VI. ÓE-NIK, 2011 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő
Algoritmizálás + kódolás C++ nyelven és Pascalban
Algoritmizálás + kódolás nyelven és ban Motiváció A Programozási alapismeretek tárgyban az algoritmizáláshoz struktogramot, a kódoláshoz nyelvet használunk, a Közismereti informatikában (a közoktatásban
Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája
Adatszerkezetek Összetett adattípus Meghatározói: A felvehető értékek halmaza Az értékhalmaz struktúrája Az ábrázolás módja Műveletei Adatszerkezet fogalma Direkt szorzat Minden eleme a T i halmazokból
Bakalárska práca Bakalár munka
Univerzita J. Selyeho Selye János Egyetem Pedagogická fakulta Tanárképző Kar Katedra informatiky Informatika Tanszék Bakalárska práca Bakalár munka Názov práce: Zbierka úloh z programovania riešiteľné
Keresés és rendezés. A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán
Keresés Rendezés Feladat Keresés és rendezés A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán 2016. november 7. Farkas B., Fiala
Programozás alapjai C nyelv 9. gyakorlat. Rekurzió. Rekurzív algoritmus
Programozás alapjai C nyelv 9. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.14. -1- Rekurzió A feladat algoritmusa eleve rekurzív
2. Rekurzió. = 2P2(n,n) 2 < 2P2(n,n) 1
2. Rekurzió Egy objektum definícióját rekurzívnak nevezünk, ha a definíció tartalmazza a definiálandó objektumot. Egy P eljárást (vagy függvényt) rekurzívnak nevezünk, ha P utasításrészében előfordul magának
Tartalom Keresés és rendezés. Vektoralgoritmusok. 1. fejezet. Keresés adatvektorban. A programozás alapjai I.
Keresés Rendezés Feladat Keresés Rendezés Feladat Tartalom Keresés és rendezés A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán
BABEŞ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR BBTE Matek-Infó verseny 1. tételsor INFORMATIKA írásbeli. A versenyzők figyelmébe:
BABEŞ BOLYAI TUDOMÁNYEGYETEM MATEMATIKA ÉS INFORMATIKA KAR BBTE Matek-Infó verseny 1. tételsor INFORMATIKA írásbeli A versenyzők figyelmébe: 1. A tömböket 1-től kezdődően indexeljük. 2. A rácstesztekre
Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.
Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt kimeneti adatot
3. Gyakorlat Ismerkedés a Java nyelvvel
3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az
INFORMATIKA tétel 2019
INFORMATIKA tétel 2019 ELIGAZÍTÁS: 1 pont hivatalból; Az 1-4 feladatokban (a pszeudokód programrészletekben): (1) a kiír \n utasítás újsorba ugratja a képernyőn a kurzort; (2) a / operátor osztási hányadost
Adatbázis és szoftverfejlesztés elmélet. Programozási tételek
Adatbázis és szoftverfejlesztés elmélet Témakör 8. 1. Egy sorozathoz egy érték hozzárendelése Az összegzés tétele Összefoglalás Programozási tételek Adott egy számsorozat. Számoljuk és írassuk ki az elemek
Algoritmusok vektorokkal keresések 1
Algoritmusok vektorokkal keresések 1 function TELJES_KERES1(A, érték) - - teljes keresés while ciklussal 1. i 1 2. while i méret(a) és A[i] érték do 3. i i + 1 4. end while 5. if i > méret(a) then 6. KIVÉTEL
Rekurzió. Programozás alapjai C nyelv 9. gyakorlat. Rekurzív algoritmus. Rekurzív algoritmus fajtái. Példa: n! (2) Példa: n!
Programozás alapjai C nyelv 9. gyakorlat Szeberényi Imre BME IIT Rekurzió A feladat algoritmusa eleve rekurzív formában adott (ld: n!). A valójában nem rekurzív de valami hasznot húzunk
Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1
Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Készítette: Gipsz Jakab Neptun-azonosító: ABC123 E-mail: gipszjakab@seholse.hu Kurzuskód: IT-13AAT1EG Gyakorlatvezető
.Net adatstruktúrák. Készítette: Major Péter
.Net adatstruktúrák Készítette: Major Péter Adatstruktúrák általában A.Net-ben számos nyelvvel ellentétben nem kell bajlódnunk a változó hosszúságú tömbök, listák, sorok stb. implementálásával, mert ezek
hiányzott szeptemberben vagy A tanuló nem hiányzott szeptemberben szöveget
Hiányzások Ebben a feladatban egy általános iskola 2017 szeptemberi hiányzásai tartalmazó szövegfájlt kell feldolgoznia. Az adatok a szeptember.csv állomány tartalmazza. Az állomány egy sorában egy tanuló
Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)
Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.05. -1- Függvények C program egymás mellé rendelt függvényekből
A függvények névvel rendelkező utasításcsoportok, melyeknek információkat adhatunk át, és van egy visszatérési értékük.
Függvények A függvények névvel rendelkező utasításcsoportok, melyeknek információkat adhatunk át, és van egy visszatérési értékük. Mint egy dzsinn: Hogyan is "használunk" egy dzsinnt? megszólítjuk megmondjuk,
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 Szeberényi Imre BME IIT Függvények C program egymás mellé rendelt függvényekből áll. A függvény (alprogram) jó absztrakciós eszköz a programok
INFORMATIKAI ALAPISMERETEK
Informatikai alapismeretek középszint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM
Rekurzió. Dr. Iványi Péter
Rekurzió Dr. Iványi Péter 1 Függvényhívás void f3(int a3) { printf( %d,a3); } void f2(int a2) { f3(a2); a2 = (a2+1); } void f1() { int a1 = 1; int b1; b1 = f2(a1); } 2 Függvényhívás void f3(int a3) { printf(
Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós október 11. Széchenyi István Egyetem, Gy r
Programozás alapjai (GKxB_INTM023) Széchenyi István Egyetem, Gy r 2018. október 11. Függvények Mi az a függvény (function)? Programkód egy konkrét, azonosítható, paraméterezhet, újrahasznosítható blokkja
Alkalmazott modul: Programozás. Programozási tételek, rendezések Giachetta Roberto
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás Programozási tételek, rendezések 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok
Informatika terméktervezőknek
Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások
Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar
Programozás I. 3. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Antal Gábor 1 Primitív típusok Típus neve Érték Alap érték Foglalt tár Intervallum byte Előjeles egész 0 8 bit
Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós március 3. Széchenyi István Egyetem, Gy r
Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. március 3. Függvények Mi az a függvény (function)? Programkód egy konkrét, azonosítható, paraméterezhet, újrahasznosítható blokkja Miért
Emlékeztető: a fordítás lépései. Szimbólumtábla-kezelés. Információáramlás. Információáramlás. Információáramlás.
Emlékeztető: a fordítás lépései Forrás-kezelő (source handler) Szimbólumtábla-kezelés Fordítóprogramok előadás (A, C, T szakirány) Lexikális elemző (scanner) Szintaktikus elemző (parser) Szemantikus elemző
Java Programozás 1. Gy: Java alapok. Ismétlés ++
Java Programozás 1. Gy: Java alapok Ismétlés ++ 24/1 B ITv: MAN 2018.02.18 Feladat Készítsünk egy komplett konzolos alkalmazást, mely generál egy számot 0 és 100 között (mindkét határt beleértve), feladatunk
Egyszerű programozási tételek
Egyszerű programozási tételek Sorozatszámítás Eljárás Sorozatszámítás(N, X, S) R R 0 Ciklus i 1-től N-ig R R művelet A[i] A : számokat tartalmazó tömb N : A tömb elemszáma R : Művelet eredménye Eldöntés
Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN
Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.
10. gyakorlat Tömb, mint függvény argumentum
10. gyakorlat Tömb, mint függvény argumentum 1. feladat: A 6. gyakorlat 1. feladatát oldja meg a strukturált programtervezési alapelv betartásával, azaz minden végrehajtandó funkciót külön függvényben
GenerikusOsztály<objektumtípus> objektum = new GenerikusOsztály<objektumtípus>();
BME MOGI Gépészeti informatika 17. A C# nyelv generikus típusait a System.Collections.Generics névtérben találhatjuk meg. Ez a névtér számos osztályt és interfészt tartalmaz, amelyek lehetővé teszik előre
Alkalmazott modul: Programozás. Programozási tételek, rendezések. Programozási tételek Algoritmusok és programozási tételek
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás, rendezések 2015 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Algoritmusok és programozási tételek
Programozás alapjai 8.Gy: Program struktúra
Programozás alapjai 8.Gy: Program struktúra Elvarázsolt matekóra P R O A L A G 32/1 B ITv: MAN 2018.11.02 Programozás történelem Kezdetben egy program egyetlen kódsorozat volt (ún. monolitikus program)
Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.
Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt kimeneti adatot
Edényrendezés. Futási idő: Tegyük fel, hogy m = n, ekkor: legjobb eset Θ(n), legrosszabb eset Θ(n 2 ), átlagos eset Θ(n).
Edényrendezés Tegyük fel, hogy a rendezendő H = {a 1,...,a n } halmaz elemei a [0,1) intervallumba eső valós számok. Vegyünk m db vödröt, V [0],...,V [m 1] és osszuk szét a rendezendő halmaz elemeit a
Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1]
Kupac adatszerkezet A bináris kupac egy majdnem teljes bináris fa, amely minden szintjén teljesen kitöltött kivéve a legalacsonyabb szintet, ahol balról jobbra haladva egy adott csúcsig vannak elemek.
Programozás BMEKOKAA146. Dr. Bécsi Tamás 3. előadás
Programozás BMEKOKAA146 Dr. Bécsi Tamás 3. előadás Vezérlési szerkezetek Elágazás Gyakran előfordul, hogy meg kell vizsgálnunk egy állítást, és attól függően, hogy igaz vagy hamis, a programnak más-más
Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN
Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN B IT v: 2016.03.03 MAN Csomagok A DBMS csomagok a PL/SQL alkalmazások fejlesztését segítik, bennük tároljuk a létrehozott programok kódjait. A specifikációs
3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai
Kémiai elemek felfedezése A kémiai elemek kémiailag tovább már nem bontható, egyszerű anyagok. Jelenleg 118 különböző kémiai elemet ismerünk, közüliik a Földön 94 található meg a természetben, ezeket természetes
Alprogramok, paraméterátadás
ELTE Informatikai Kar, Programozási Nyelvek és Fordítóprogramok Tanszék October 24, 2016 Programozási nyelvek Alprogramok Függvények, eljárások Metódusok Korutinok stb. Alprogramok Alprogram: olyan nyelvi
A C# programozási nyelv alapjai
A C# programozási nyelv alapjai Tisztán objektum-orientált Kis- és nagybetűket megkülönbözteti Ötvözi a C++, Delphi, Java programozási nyelvek pozitívumait.net futtatókörnyezet Visual Studio fejlesztőkörnyezet
Rekurzió. (Horváth Gyula és Szlávi Péter előadásai. felhasználásával)
Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió Klasszikus példák Faktoriális n! Fibonacci-számok Fib n A rekurzió lényege: önhivatkozás n * n 1! ha n 0 1 ha n 0 0 ha n 0 1
<... < s n. Írjuk le a megoldási módszert, és adjunk meg egy megjegyzésekkel ellátott Pascal-programot. A bemeneti adatokat helyesnek tekintjük.
Informatika felvételi feladatok - megoldásokkal A kolozsvári Babes-Bolyai Tudományegyetem Matematika és Informatika Karán először az idén lehetett informatikából felvételizni. Az új felvételi rendszer
Algoritmusok helyességének bizonyítása. A Floyd-módszer
Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk
Szoftvertervezés és -fejlesztés I.
Szoftvertervezés és -fejlesztés I. Operátorok Vezérlési szerkezetek Gyakorlás 1 Hallgatói Tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik.
1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje
1. Alapfogalmak 1.1. Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt
Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból
ÜTEMTERV Programozás-elmélet c. tárgyhoz (GEMAK233B, GEMAK233-B) BSc gazdaságinformatikus, programtervező informatikus alapszakok számára Óraszám: heti 2+0, (aláírás+kollokvium, 3 kredit) 2019/20-es tanév
Érdekes informatika feladatok
A keres,kkel és adatbázissal ellátott lengyel honlap számos díjat kapott: Spirit of Delphi '98, Delphi Community Award, Poland on the Internet, Golden Bagel Award stb. Az itt megtalálható komponenseket
Algoritmizálás, adatmodellezés tanítása 7. előadás
Algoritmizálás, adatmodellezés tanítása 7. előadás Oszd meg és uralkodj! Több részfeladatra bontás, amelyek hasonlóan oldhatók meg, lépései: a triviális eset (amikor nincs rekurzív hívás) felosztás (megadjuk
OOP: Java 1.Gy: Java alapok
OOP: Java 1.Gy: Java alapok Eclipse alapok O O P Objektum Orientált Programozás 31/1 B ITv: MAN 2019.02.25 Feladat Írja meg a 4 alapműveletet megvalósító Kalkulátor programot Java nyelven. Az elvégzendő
Objektum Orientált Programozás. 5. JAVA osztályok 21/1B IT MAN
Objektum Orientált Programozás 5. JAVA osztályok 21/1B IT MAN B IT v: 2016.03.09 MAN Feladatok 1. Készítsen egy Alkalmazott osztályt - legyen név, kor és fizetés adata - legyen egy osztályszintű adattagja
Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15
Matlab alapok Baran Ágnes Elágazások, függvények Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15 Logikai kifejezések =, ==, = (két mátrixra is alkalmazhatóak, ilyenkor elemenként történik
Programozási módszertan. Mohó algoritmusok
PM-08 p. 1/17 Programozási módszertan Mohó algoritmusok Werner Ágnes Villamosmérnöki és Információs Rendszerek Tanszék e-mail: werner.agnes@virt.uni-pannon.hu PM-08 p. 2/17 Bevezetés Dinamikus programozás
Egyszerű példaprogramok gyakorláshoz
Egyszerű példaprogramok gyakorláshoz Tartalom Feladatok... 2 For ciklus... 2 Szorzótábla... 2 Szorzótábla részlet... 3 Pascal háromszög... 4 Pascal háromszög szebben... 5 DO-LOOP ciklus... 6 Véletlen sorsolás...
Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1
Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Készítette: Gipsz Jakab Neptun-azonosító: ABC123 E-mail: gipszjakab@seholse.hu Kurzuskód: IT-13AAT1EG 1 A fenti