programozás i. - 3. eloadás tömbök a c#-ban metódusok c# ...szatyika.hu/files/progi03.pdf · t...
TRANSCRIPT
![Page 1: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/1.jpg)
Programozas I.3. eloadas
Tombok a C#-banMetodusok C#-ban
Egyszeru programozasi tetelek
Sergyan [email protected]
Obudai EgyetemNeumann Janos Informatikai Kar
Szoftvertechnologia Intezet
2013. szeptember 23.
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 1 / 76
![Page 2: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/2.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 2 / 76
![Page 3: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/3.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 3 / 76
![Page 4: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/4.jpg)
A tomb
Tobb, azonos tıpusu valtozo egyuttes kezeleset teszi lehetove
int a1; int a2; int a3; int a4; . . . helyett egyetlen ”inttomb” tıpusu valtozo hasznalata egy nevvel
Elemei a tombon beluli sorszamukkal (index) erhetoek el(kezdo index: C#-ban 0, pszeudokodban: 1)
A tombben tarolt tıpus es a tomb merete nem modosıthato → szigoruadatszerkezet, csereben nagyon gyors
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 4 / 76
![Page 5: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/5.jpg)
Tombbel vegezheto tevekenysegek
Deklaracio: a tomb nevenek es elemei tıpusanak megadasa
Tombletrehozas: a tomb meretenek meghatarozasa
Ertekadas: ertek elhelyezese egy tombelemben
Ertek lekerdezese: egy tombelem tartalmanak kiolvasasa. Az ertek akiolvasas utan is megmarad a tombelemben
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 5 / 76
![Page 6: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/6.jpg)
Tombbel vegezheto tevekenysegek C#-ban
1 Deklaracio: int[] tomb;
2 Tombletrehozas: tomb = new int[10];
3 Ertekadas: tomb[5] = 25; vagy tomb[5] = 6 * 2 -29;
4 Ertek lekerdezese: 5 * 10 - tomb[5] + 2
A deklaracio es a tombletrehozas ossze is vonhato:int[] tomb = new int[10];
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 6 / 76
![Page 7: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/7.jpg)
Tombelem elerese (indexeles)
A tomb egy adott elemehez a tomb neve utan szogletes zarojelekkozott megadott sorszammal (index) ferhetunk hozza:tombnev[index]
Az index csak nemnegatıv egesz szam lehet
A tomb elso elemenek indexe: 0
A tomb utolso elemenek indexe: elemszam - 1
Kisebb, vagy nagyobb index megadasa futasi hibat okoz.
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 7 / 76
![Page 8: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/8.jpg)
Tomb hosszanak (elemei szamanak) lekerdezese
Altalanos formatum: tombnev.Length
A tombben levo elemek szamat adja meg
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 8 / 76
![Page 9: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/9.jpg)
Tomb inicializalasa
A tomb deklaracioja, letrehozasa es elemeinek megadasa egyutasıtasban is elvegezheto
Formatuma: tıpus[] tombnev = {elem1, elem2, . . ., elemN};Peldak:double[] valosak = {2.0, -3.5, 8.2, -1234.56};bool[] logikai = {true, false, false, true, true};
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 9 / 76
![Page 10: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/10.jpg)
Tombbel vegezheto tevekenysegek C#-ban
A tevekenysegek sorrendje:1 Deklaracio2 Tombletrehozas3 Ertekadas egy tombelemnek, vagy egy tombelem ertekenek lekerdezese
A fentiek kozul akarmelyik tevekenyseget szeretnenk is vegrehajtani,elobb a sorrendben ot megelozot kell elvegezni
A tombelemeknek nem kotelezo erteket adni az ertek lekerdezese elott
Ertekadas hianyaban a tombelem a tıpus alaperteket veszi fel
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 10 / 76
![Page 11: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/11.jpg)
Tobbdimenzios tombok
2 dimenzios tomb
sorok es oszlopokelem elerese 2 indexszel
3 dimenzios tombok
sorok, oszlopok, lapokelem elerese 3 indexszel
N dimenzios tombok
0., 1., . . ., N. dimenzioelem elerese N indexszel
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 11 / 76
![Page 12: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/12.jpg)
Tobbdimenzios tombok – Deklaracio
Altalanos formatum: tıpus[vesszok] tombnev;
A szogletes zarojelbe dimenzioszam - 1 darab vesszot kell tenni
Peldak:
int[,] matrix;
bool[,,] haromdimenziostomb;
double[,,,,] otdimenziostomb;
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 12 / 76
![Page 13: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/13.jpg)
Tobbdimenzios tombok – Tombletrehozas
Altalanos formatum:tombnev = new tıpus[elemszam1, . . ., elemszamN];
Az egyes dimenziok elemszamait vesszokkel elvalasztva kell megadni
A deklaracio es a tombletrehozas itt is osszevonhato
Peldak
matrix = new int[3, 5];
haromdimenziostomb = new bool[4, 2, 5];
int[,,] t = new int[3, 3, 3];
int[,] egeszmatrix = {{1, 2, 3, 4}, {5, 6, 7, 8},{9, 0, 1, 2}};
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 13 / 76
![Page 14: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/14.jpg)
Tobbdimenzios tombok – Tombelem elerese (indexeles)
A szogletes zarojelek koze a tombelem minden egyes dimenziojanbeluli sorszamait kell vesszokkel elvalasztva megadni:tombnev[index1, index2, . . ., indexN]
Az indexekre vonatkozo szabalyok ugyanazok, mint az egydimenziostombnel
Pontosan annyi indexet kell megadni, ahany dimenzios a tomb
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 14 / 76
![Page 15: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/15.jpg)
Tobbdimenzios tombok – Tomb meretenek lekerdezese
Elemek szamanak lekerdezese:
Osszes tombben levo elem darabszama:tombnev.Length
Egy adott dimenzio elemszama (sorok szama, oszlopok szama, . . .):tombnev.GetLength(dimenziosorszam)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 15 / 76
![Page 16: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/16.jpg)
Tomb bejarasa – for utasıtas
for(inicializator; feltetel; iterator)
Az inicializator es az iterator tetszoleges utasıtas lehet
Mukodese:
Belepeskor egyszer vegrehajtodik az inicializatorMinden ciklusmenetben kiertekelodik a feltetelAmennyiben a feltetel igaz, a ciklusmagban levo utasıtasok egyszervegrehajtodnakA ciklusmag vegeztevel vegrehajtodik az iterator es ismet kiertekelodika feltetelA ciklus akkor er veget, amikor a feltetel hamissa valik, ellenkezoesetben ujabb ciklusmenet kovetkezik
Altalaban az inicializator egy szamlalot allıt be, az iterator pedig ezt aszamlalot noveli vagy csokkenti
Legtobbszor akkor hasznaljuk, ha elore ismert szamu alkalommalszeretnenk vegrehajtani egy utasıtast
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 16 / 76
![Page 17: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/17.jpg)
A for utasıtas (pelda)
//Szammatrix
//Ez a kulso ciklus fut vegig az osszes soron
for (int i = 0; i < 100; i += 10)
{//Ez a belso ciklus fut vegig egy soron belul
//az osszes oszlopon
for (int j = i; j < i + 10; j++)
{Console.Write(" {0}", j);
}Console.WriteLine();
}
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 17 / 76
![Page 18: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/18.jpg)
Tomb bejarasa – foreach utasıtas
foreach (tıpus valtozo in gyujtemeny)
Lehetove teszi egy utasıtas vegrehajtasat egy adott gyujtemeny osszeselemere
A ”gyujtemeny” pontos fogalmat kesobb reszletesen targyaljukA tombok gyujtemenyek, tehat a foreach utasıtas tombokkel ishasznalhato
Mukodese:Belepeskor letrejon egy tıpus tıpusu valtozo (”iteracios valtozo”)
Ez a valtozo csak az utasıtason belul hasznalhato
Az utasıtas annyiszor hajtodik vegre, ahany elemet tartalmaz agyujtemenyAz iteracios valtozo minden egyes vegrehajtasnal felveszi a gyujtemenysoron kovetkezo elemenek erteket
Az iteracios valtozo az utasıtasban nem modosıthato
Erre a celra a for utasıtas hasznalhato
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 18 / 76
![Page 19: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/19.jpg)
A foreach utasıtas (pelda)
int[] teszttomb = {1, 2, 3, 10, 20, 30, 100, 200, 300, 999};
Console.WriteLine("Pelda a foreach utasıtasra");
foreach (int tombertek in teszttomb)
{
Console.Write("{0} ", tombertek);
}
Console.WriteLine();
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 19 / 76
![Page 20: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/20.jpg)
Fureszfogas tomb
A fureszfogas tomb tombok tombje
A belso (azaz tartalmazott) tombok merete kulonbozo lehet
A belso tombok meretenek felso hatarat minden egyes belso tombkulon-kulon meg kell adni
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 20 / 76
![Page 21: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/21.jpg)
Fureszfogas tomb
int[][] myJagArray = new int[5][];
for (int i = 0; i < myJagArray.Length; i++)
myJagArray[i] = new int[i+7];
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < myJagArray[i].Length; j++)
Console.Write(myJagArray[i][j] + " ");
Console.WriteLine();
}
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 21 / 76
![Page 22: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/22.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 22 / 76
![Page 23: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/23.jpg)
Metodusok
A metodus egy kodblokk, amely utasıtasok sorozatat tartalmazza
A program azaltal futtatja ezt a kodblokkot, hogy meghıvja ametodust es megszabja a szukseges parametereit
C#-ban minden futtatando utasıtas egy metodusban helyezkedik el
Eddig programjainkat a Main() metodusba ırtuk
A tobbszor hasznalt kodreszeket ırjuk metodusba
”Copy-Paste” helyettCelszeru a hosszu metodusok feldarabolasa az egyszerubb ertelmezesceljabol
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 23 / 76
![Page 24: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/24.jpg)
Metodusok
Szintaktika
visszateresi tıpus metodusnev(parameterek)
{metodustorzs}
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 24 / 76
![Page 25: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/25.jpg)
Metodusok tıpusa
A tıpus a visszaadott ertek tıpusa vagy void, ha nem adunk visszasemmit
Egy metodusnak legfeljebb egy visszateresi erteke van
de az lehet tomb is
A visszateresi ertek tıpus elott allhatnak kulonfele modosıtok
Pl. static, abstract, override, new, illetve lathatosagot jelzokulcsszavak
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 25 / 76
![Page 26: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/26.jpg)
Metodustorzs
A metodushoz tartozo utasıtasok, amelyek hasznalhatjak ametodusnak atadott parametereket
A metodus visszateresi erteket a return kulcsszo utan adjuk meg.Ennek hatasara a metodusbol azonnal visszaterunk a hıvohoz, akkoris, ha meg vannak tovabbi utasıtasok a return utan.
Ha a metodus tobb agon is veget erhet, akkor minden ag vegere kellreturn
Visszateresi ertek nelkuli (void) metodusnal – ha a program mindig ametodustorzs fizikai vegenel fejezodik be – a return utasıtaselhagyhato
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 26 / 76
![Page 27: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/27.jpg)
Valtozok hatokore
Egy blokkban deklaralt valtozok csak a deklaralastol kezdve a blokkvegeig elerhetok
Kovetkezmeny: az egyik metodusban deklaralt x valtozo nem ugyanaz,mint a masik metodusbeli x valtozo
A hıvo kornyezet valtozoi nem erhetok el a metodusban
Ezert szukseges a parameter atadas es a visszateresi ertekKozos adat hasznalhato: globalis valtozok, de hasznalatuk nem javasolt
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 27 / 76
![Page 28: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/28.jpg)
Egyszeru pelda
Teglalap teruletenek szamıtasa
static int terulet(int a, int b) //parameterek atadasa
{
return a * b;
}
static void Main()
{
int egyikOldal = 5;
int masikOldal = 7;
Console.WriteLine("A teglalap terulete: "
+ terulet(egyikOldal, masikOldal));
}
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 28 / 76
![Page 29: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/29.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 29 / 76
![Page 30: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/30.jpg)
Programozasi tetelek
A programozasi tetelek jol megvalasztott, egyszeru feladatokmegoldasai
Segıtsegukkel a gyakorlatban szukseges feladatok jelentos reszemegoldhatoHelyesseguk egyszeruen bizonyıthatoHasznalatuk celszeru, hiszen (masok altal is) jol attekintheto kodoteredmenyeznek
Egy lehetseges csoportosıtasuk
Egy sorozathoz egy erteket rendelo feladatokEgy sorozathoz egy sorozatot rendelo feladatokEgy sorozathoz tobb sorozatot rendelo feladatokTobb sorozathoz egy sorozatot rendelo feladatok
Feldolgozando intervallum alapjan megkulonboztetunk
Rogzıtett intervallumos programozasi teteleketFeltetelig tarto programozasi teteleket(ezeket a valtozatokat nem targyaljuk)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 30 / 76
![Page 31: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/31.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 31 / 76
![Page 32: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/32.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 32 / 76
![Page 33: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/33.jpg)
Sorozatszamıtas
Tıpusfeladatok
1 Egy osztaly N darab tanulojanak osztalyzata alapjan adjuk meg azosztaly atlagat!
2 Egy M elemu betusorozat betuit fuzzuk ossze egyetlen szoveg tıpusuvaltozoba!
3 Keszıtsunk algoritmust, amely egy autoversenyzo koronkenti idejealapjan meghatarozza a versenyzo egy kor megtetelehez szuksegesatlagidejet!
4 A Balaton menten K darab madarasz vegzett megfigyeleseket.Mindegyik megadta, hogy milyen madarakat latott. Keszıtsunkalgoritmust, amely a megfigyelesek alapjan megadja a Balatononelofordulo madarfajokat!
5 Adjuk meg az elso N darab pozitıv egesz szam szorzatat!
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 33 / 76
![Page 34: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/34.jpg)
Sorozatszamıtas
Bemenet
A: Feldolgozando tombN: Tomb elemeinek szama
Kimenet
R: Muvelet eredmenye
Pszeudokod
Eljaras Sorozatszamıtas(A, N, R)R ← R0
Ciklus i ← 1-tol N-igR ← R muvelet A[i ]
Ciklus vegeEljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 34 / 76
![Page 35: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/35.jpg)
Sorozatszamıtas
Megjegyzesek
Adatok sorozatahoz egy erteket rendelo fuggvenyt helyettesıt
Minden olyan esetben hasznalhato, ha ezt a fuggvenyt felbonthatjukertekparokon kiszamıtott fuggvenyek sorozatara
Az indulaskor hasznalt nullerteket ertelemszeruen a kerdeses fuggveny(esetleg a feladat) alapjan kell megvalasztani
osszegzes faktorialis elemek unioja
R0 0 1 { }muvelet R ← R + A[i ] R ← R ∗ A[i ] R ← R ∪ A[i ]
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 35 / 76
![Page 36: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/36.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
R
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 37: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/37.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
R = 0
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 38: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/38.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 1
R = 0
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 39: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/39.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 1
1
R = 1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 40: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/40.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 2
R = 1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 41: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/41.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 2
2
R = 3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 42: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/42.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 3
R = 3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 43: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/43.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 3
3
R = 6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 44: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/44.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 4
R = 6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 45: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/45.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 4
5
R = 11
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 46: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/46.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 5
R = 11
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 47: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/47.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 5
8
R = 19
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 48: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/48.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 6
R = 19
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 49: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/49.jpg)
Sorozat elemeinek osszegzese
Eljaras Sorozatszamıtas(A, N, R)R ← 0Ciklus i ← 1-tol N-ig
R ← R + A[i ]Ciklus vege
Eljaras vege
1 2 3 5 8 13
i = 6
13
R = 32
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 36 / 76
![Page 50: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/50.jpg)
Futasi ido elemzese
Eljaras Sorozatszamıtas(A, N, R)
R ← R0 1 ertekadas
Ciklus i ← 1-tol N-ig 1 + N ertekadas es N + 1 osszeh.
R ← R muvelet A[i ] N ertekadas
Ciklus vegeEljaras vege
A futasi ido minden esetben:
T (N) = 1 + 2(N + 1) + N = 3N + 3 = O(N)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 37 / 76
![Page 51: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/51.jpg)
Sorozatszamıtas
Osszegzes
Bemenet: X – szamokat tartalmazo tombN – tomb elemszama
Kimenet: S – tomb elemeinek osszege
Eljaras Osszegzes(N, X , S)S ← 0Ciklus i ← 1-tol N-ig
S ← S + X [i ]Ciklus vege
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 38 / 76
![Page 52: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/52.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 39 / 76
![Page 53: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/53.jpg)
Eldontes
Tıpusfeladatok
1 Dontsuk el egy szorol a honapnevek sorozata alapjan, hogy egy honapneve-e!
2 Dontsuk el egy tanulo ev vegi osztalyzata alapjan, hogy kitunotanulo-e!
3 Juniusban minden nap delben megmertuk, hogy a Balaton Siofoknalhany fokos. Dontsuk el a meresek alapjan, hogy a vız hofokafolyamatosan emelkedett-e!
4 Dontsuk el egy szamrol, hogy prımszam-e!
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 40 / 76
![Page 54: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/54.jpg)
Eldontes
Bemenet
A: Feldolgozando tombN: Tomb elemeinek szamaT : Tulajdonsag fuggveny
Kimenet
VAN: Logikai valtozo
Pszeudokod
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 41 / 76
![Page 55: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/55.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 13
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 56: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/56.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 13
i = 1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 57: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/57.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 13
i = 1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 58: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/58.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 13
i = 1
1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 59: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/59.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 13
i = 1
1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 60: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/60.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131
i = 2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 61: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/61.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131
i = 2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 62: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/62.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131
i = 2
3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 63: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/63.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131
i = 2
3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 64: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/64.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3
i = 3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 65: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/65.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3
i = 3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 66: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/66.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3
i = 3
5
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 67: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/67.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3
i = 3
5
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 68: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/68.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5
i = 4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 69: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/69.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5
i = 4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 70: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/70.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5
i = 4
7
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 71: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/71.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5
i = 4
7
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 72: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/72.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5 7
i = 5
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 73: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/73.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5 7
i = 5
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 74: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/74.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5 7
i = 5
8
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 75: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/75.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5 7
i = 5
8
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 76: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/76.jpg)
Dontsuk el, hogy egy sorozatban van-e paros szam!
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)
Eljaras vege
1 3 5 7 8 131 3 5 7 8 VAN ← true
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 42 / 76
![Page 77: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/77.jpg)
Eldontes
Megjegyzesek
A T tulajdonsag helyes megvalasztasaval a tetel sokfele szituaciobanalkalmazhato
A ”minden elem T tulajdonsagu” feladatot egyszeruenvisszavezethetjuk az eldontesre a T tulajdonsag tagadasaval
A sorozatszamıtasnal megismert modszerrel ellentetben ez azalgoritmus az elso T tulajdonsagu elem megtalalasa utan mar nemfolytatja a keresest
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 43 / 76
![Page 78: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/78.jpg)
Eldontes: minden elem T tulajdonsagu-e?
Eljaras Eldontes(A, N, T , VAN)i ← 1Ciklus amıg (i ≤ N) es T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i > N)
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 44 / 76
![Page 79: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/79.jpg)
Futasi ido elemzese
Legrosszabb eset
Legrosszabb esetnek azt tekinthetjuk, amikor nincs a tombben Ttulajdonsagu elem, hiszen ilyenkor az egesz tombot be kell jarnunk.
Eljaras Eldontes(A, N, T , VAN)
i ← 1 1 ertekadas
Ciklus amıg (i ≤ N) es ¬T (A[i ]) N + 1 osszeh. N osszeh.
i ← i + 1 N ertekadasCiklus vege
VAN ← (i ≤ N) 1 ertekadas es 1 osszeh.
Eljaras vege
T (N) = 1 + N + 1 + N + N + 2 = 3N + 4 = O(N)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 45 / 76
![Page 80: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/80.jpg)
Futasi ido elemzese
Legjobb eset
Ez az eset akkor all elo, ha rogton az elso elem T tulajdonsagu
T (N) = 1 + 1 + 1 + 0 + 2 = 5 = O(1)
Atlagos eset
T (N) = 1 +N
2+
N
2+
N
2+ 2 =
3N
2+ 3 = O(
N
2) = O(N)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 46 / 76
![Page 81: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/81.jpg)
Eldontes
Prımteszt
Bemenet: N – pozitıv egesz szam (legalabb 2)Kimenet: PRIM – logikai valtozo; pontosan akkor igaz, ha N prımszam
Eljaras Eldontes(N, PRIM)i ← 2Ciklus amıg (i ≤ N − 1) es ¬(i osztoja N-nek)
i ← i + 1Ciklus vegePRIM ← (i > N − 1)
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 47 / 76
![Page 82: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/82.jpg)
Eldontes
Monoton novekedes
Bemenet: X – feldolgozando tombN – X elemszama
Kimenet: MONOTON – logikai valtozo; pontosan akkor igaz,ha X elemei monoton novekedoek
Eljaras Eldontes(N, X , MONOTON)i ← 1Ciklus amıg (i ≤ N − 1) es (X [i ] ≤ X [i + 1])
i ← i + 1Ciklus vegeMONOTON ← (i > N − 1)
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 48 / 76
![Page 83: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/83.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 49 / 76
![Page 84: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/84.jpg)
Kivalasztas
Tıpusfeladatok
1 Ismerjuk egy honap nevet. A honapnevek sorozata alapjan mondjukmeg a honap sorszamat!
2 Adjuk meg egy egynel nagyobb termeszetes szam legkisebb, 1-tolkulonbozo osztojat!
3 A naptarban talalhato nevnapok alapjan adjuk meg a legjobbbaratunk nevnapjat!
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 50 / 76
![Page 85: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/85.jpg)
Kivalasztas
Bemenet
A: Feldolgozando tombN: Tomb elemeinek szamaT : Tulajdonsag fuggveny
Kimenet
SORSZ : Elso T tulajdonsaguelem indexe
Pszeudokod
Eljaras Kivalasztas(A, N, T , SORSZ )i ← 1Ciklus amıg ¬T (A[i ])
i ← i + 1Ciklus vegeSORSZ ← i
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 51 / 76
![Page 86: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/86.jpg)
Kivalasztas
Megjegyzesek
Az eldontessel ellentetben ez visszaadja az elso T tulajdonsagu elemsorszamat
A tetel feltetelezi, hogy biztosan van legalabb egy T tulajdonsaguelem
Sorszam helyett visszaadhatjuk az elem erteket is, de celszerubb asorszam hasznalata (ez alapjan az elem is egyszeruenmeghatarozhato)
Az algoritmus mukodese es futasi ideje hasonlo az eldonteshez
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 52 / 76
![Page 87: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/87.jpg)
Kivalasztas
Legjobb barat nevnapja
Bemenet: X – keresztneveket es a hozzajuk tartozo nevnapokattartalmazo tomb
N – X elemeinek szamaBARAT – legjobb baratunk keresztneve
Kimenet: NAP – legjobb baratunk nevnapja
Eljaras Kivalasztas(N, X , BARAT , NAP)i ← 1Ciklus amıg (X [i ].nev 6= BARAT )
i ← i + 1Ciklus vegeNAP ← X [i ].nevnap
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 53 / 76
![Page 88: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/88.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 54 / 76
![Page 89: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/89.jpg)
Linearis kereses
Tıpusfeladatok
1 Ismerjuk egy uzlet egy havi forgalmat: minden napra megadjuk, hogymennyi volt a bevetel es mennyi a kiadas. Adjunk meg egy olyannapot – ha van –, amelyik nem volt nyereseges!
2 A Budapest-Nagykanizsa vasuti menetrend alapjan ket adottallomashoz adjunk meg egy olyan vonatot, amellyel el lehet jutniatszallas nelkul az egyikrol a masikra!
3 Egy tetszoleges (nem 1) termeszetes szamnak adjuk meg egyosztojat, ami nem az 1 es nem is onmaga!
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 55 / 76
![Page 90: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/90.jpg)
Linearis kereses
Bemenet
A: Feldolgozando tombN: Tomb elemeinek szamaT : Tulajdonsag fuggveny
Kimenet
VAN: Logikai valtozoSORSZ : Elso T tulajdonsagu
elem indexe
Pszeudokod
Eljaras Kereses(A, N, T , VAN, SORSZ )i ← 1Ciklus amıg (i ≤ N) es ¬T (A[i ])
i ← i + 1Ciklus vegeVAN ← (i ≤ N)Ha VAN akkor
SORSZ ← iElagazas vege
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 56 / 76
![Page 91: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/91.jpg)
Linearis kereses
Megjegyzesek
Tekintheto az eldontes es a kivalasztas tetel otvozetenek is: valasztad arra, hogy van-e T tulajdonsagu elem a sorozatban, es ha van,akkor visszaadja a sorszamat is.
Ertelemszeruen nem feltetelezi, hogy biztosan van T tulajdonsaguelem a sorozatban. Ha nincs, akkor a VAN erteke hamis, ilyenkor aSORSZ valtozo nem kap erteket.
Az algoritmus mukodese es futasi ideje hasonlo az eldonteshez
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 57 / 76
![Page 92: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/92.jpg)
Linearis kereses
Nem nyereseges nap
Bemenet: K – kiadasok tombjeB – bevetelek tombjeN – K es B elemeinek szama
Kimenet: VAN – logikai valtozo; pontosan akkor igaz,ha van nem nyereseges nap
SORSZ – a nem nyereseges nap (ha van ilyen!) sorszama
Eljaras Kereses(K , B, N, VAN, SORSZ )i ← 1Ciklus amıg (i ≤ N) es (B[i ]− K [i ] > 0)
i ← i + 1Ciklus vegeVAN ← (i ≤ N)Ha VAN akkor
SORSZ ← iElagazas vege
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 58 / 76
![Page 93: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/93.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 59 / 76
![Page 94: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/94.jpg)
Megszamlalas
Tıpusfeladatok
1 Csaladok letszama, illetve jovedelme alapjan allapıtsuk meg, hogyhany csalad el a letminimum alatt!
2 Egy futoverseny idoeredmenyei alapjan hatarozzuk meg, hogy aversenyzok hany szazaleka teljesıtette az olimpiai indulashozszukseges szintet!
3 Adjuk meg egy szoveg maganhangzoinak szamat!
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 60 / 76
![Page 95: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/95.jpg)
Megszamlalas
Bemenet
A: Feldolgozando tombN: Tomb elemeinek szamaT : Tulajdonsag fuggveny
Kimenet
DB: T tulajdonsagu elemekszama
Pszeudokod
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 61 / 76
![Page 96: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/96.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 97: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/97.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 6 DB ← 0
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 98: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/98.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 6 DB ← 0
i = 1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 99: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/99.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 6 DB ← 0
i = 1
2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 100: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/100.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 6 DB ← 0
i = 1
2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 101: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/101.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 6
i = 1
2 DB ← 1
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 102: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/102.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 DB ← 1
i = 2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 103: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/103.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 DB ← 1
i = 2
7
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 104: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/104.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 DB ← 1
i = 2
7
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 105: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/105.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 DB ← 17
i = 3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 106: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/106.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 DB ← 17
i = 3
4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 107: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/107.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 DB ← 17
i = 3
4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 108: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/108.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7
i = 3
4 DB ← 2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 109: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/109.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 DB ← 2
i = 4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 110: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/110.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 DB ← 2
i = 4
10
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 111: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/111.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 DB ← 2
i = 4
10
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 112: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/112.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4
i = 4
10 DB ← 3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 113: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/113.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 10 DB ← 3
i = 5
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 114: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/114.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 10 DB ← 3
i = 5
3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 115: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/115.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 10 DB ← 3
i = 5
3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 116: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/116.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 10 DB ← 33
i = 6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 117: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/117.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 10 DB ← 33
i = 6
6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 118: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/118.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 10 DB ← 33
i = 6
6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 119: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/119.jpg)
Paros szamok megszamolasa
Eljaras Megszamlalas(A, N, T , DB)DB ← 0Ciklus i ← 1-tol N-ig
Ha T (A[i ]) akkorDB ← DB + 1
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 3 62 7 4 10 3
i = 6
6 DB ← 4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 62 / 76
![Page 120: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/120.jpg)
Megszamlalas
Megjegyzesek
Amennyiben nincs T tulajdonsagu elem a sorozatban, akkorertelemszeruen 0 kerul a DB valtozoba
Valojaban egy sorozatszamıtas, amely minden T tulajdonsagu elemeseten 1-et hozzaad a DB ertekehez
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 63 / 76
![Page 121: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/121.jpg)
Futasi ido elemzese
Legrosszab eset
Futasi ido szempontjabol a legrosszabb esetnek azt tekinthetjuk, haminden elem T tulajdonsagu, mert ilyenkor minden esetben DB-t isnovelnunk kell
Eljaras Megszamlalas(A, N, T , DB)
DB ← 0 1 ertekadas
Ciklus i ← 1-tol N-ig 1 + N ertekadas es N + 1 osszeh.
Ha T (A[i ]) akkor N osszeh.
DB ← DB + 1 N ertekadasElagazas vege
Ciklus vegeEljaras vege
T (N) = 1 + 2(N + 1) + N + N = 4N + 3 = O(N)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 64 / 76
![Page 122: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/122.jpg)
Futasi ido elemzese
Legjobb eset
Legjobb esetnek azt tekinthetjuk, amikor egyetlen T tulajdonsagu elemsincs a tombben
T (N) = 1 + 2(N + 1) + N + 0 = 3N + 3 = O(N)
Atlagos eset
T (N) = 1 + 2(N + 1) + N +N
2=
7N
2+ 3 = O(N)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 65 / 76
![Page 123: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/123.jpg)
Megszamlalas
Olimpiai indulasi szintet teljesıto futok szazalekos aranya
Bemenet: ID – Futok idoeredmenyeit tartalmazo tombN – ID elemeinek szamaSZINT – Olimpiai indulashoz szukseges felso idokorlat
Kimenet: SZAZ – ID elemei kozul a SZINT erteket meg nem haladokszazalekos aranya
Eljaras Megszamlalas(N, ID, SZINT , SZAZ )DB ← 0Ciklus i ← 1-tol N-ig
Ha (ID[i ] ≤ SZINT ) akkorDB ← DB + 1
Elagazas vegeCiklus vegeSZAZ ← Kerekıt(100 ∗ DB/N)
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 66 / 76
![Page 124: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/124.jpg)
Tartalom
1 Tombok a C#-ban
2 Metodusok C#-ban
3 Programozasi tetelek
4 Egyszeru programozasi tetelekSorozatszamıtasEldontesKivalasztasLinearis keresesMegszamlalasMaximumkivalasztas
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 67 / 76
![Page 125: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/125.jpg)
Maximumkivalasztas
Tıpusfeladatok
1 Egy korhazban megmertek minden beteg lazat. Adjuk meg, hogy ki aleglazasabb!
2 Egy csalad havi bevetelei es kiadasai alapjan adjuk meg, hogy melyikhonapban tudtak a legtobbet megtakarıtani!
3 Egy osztaly tanuloinak nevei alapjan adjuk meg a nevsorban legelsotanulot!
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 68 / 76
![Page 126: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/126.jpg)
Maximumkivalasztas
Bemenet
A: Feldolgozando tombN: Tomb elemeinek szama
Kimenet
MAX : Maximalis elem indexe
Pszeudokod
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 69 / 76
![Page 127: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/127.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 128: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/128.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 1
2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 129: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/129.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 1
2
i = 2
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 130: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/130.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 1
2
i = 2
7
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 131: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/131.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
i = 2
MAX = 2
7
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 132: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/132.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 2
7
i = 3
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 133: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/133.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 2
7
i = 3
4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 134: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/134.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 2
7
i = 4
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 135: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/135.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 2
7
i = 4
10
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 136: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/136.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
i = 4
MAX = 4
10
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 137: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/137.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 4
10
i = 5
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 138: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/138.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 4
10
i = 5
13
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 139: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/139.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
i = 5
MAX = 5
13
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 140: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/140.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 5
13
i = 6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 141: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/141.jpg)
Maximumkivalasztas
Eljaras Maximumivalasztas(A, N, MAX )MAX ← 1Ciklus i ← 2-tol N-ig
Ha A[i ] > A[MAX ] akkorMAX ← i
Elagazas vegeCiklus vege
Eljaras vege
2 7 4 10 13 6
MAX = 5
13
i = 6
6
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 70 / 76
![Page 142: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/142.jpg)
Maximumkivalasztas
Megjegyzesek
Relacio megfordıtasaval ertelemszeruen minimumkivalasztas lesz atetel celja
Sorszam helyett visszaadhatjuk az elem erteket is, de celszerubb asorszam hasznalata (ez alapjan az elem is azonnal meghatarozhato)
Feltetelezzuk, hogy legalabb egy elem letezik a listaban
Tobb maximalis elem eseten az elsot adja vissza
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 71 / 76
![Page 143: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/143.jpg)
Futasi ido elemzese
Legrosszabb eset
Futasi ido szempontjabol a legrosszabb eset, ha novekvo modon rendezetta sorozat, mert ıgy minden esetben modosıtani kell MAX erteket.
Eljaras Maximumivalasztas(A, N, MAX )
MAX ← 1 1 ertekadas
Ciklus i ← 2-tol N-ig N ertekadas es N osszeh.
Ha A[i ] > A[MAX ] akkor N − 1 osszeh.
MAX ← i N − 1 ertekadas
Elagazas vegeCiklus vege
Eljaras vege
T (N) = 1 + 2N + N − 1 + N − 1 = 4N − 1 = O(N)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 72 / 76
![Page 144: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/144.jpg)
Futasi ido elemzese
Legjobb eset
Ha az elso elem a legnagyobb, akkor MAX erteket soha nem kellmodosıtani
T (N) = 1 + 2N + N − 1 + 0 = 3N = O(N)
Atlagos eset
T (N) = 1 + 2N + N − 1 +N
2=
7N
2= O(N)
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 73 / 76
![Page 145: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/145.jpg)
Maximumkivalasztas
Nevsorban legelso tanulo
Bemenet: X – feldolgozando tombN – X elemeinek szama
Kimenet: MIN – X (elso) legkisebb elemenek indexeNEV – X – legkisebb elemenek erteke
Eljaras Minimumkivalasztas(X , N, MIN, NEV )MIN ← 1Ciklus i ← 2-tol N-ig
Ha X [MIN] > X [i ] akkorMIN ← i
Elagazas vegeCiklus vegeNEV ← X [MIN]
Eljaras vege
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 74 / 76
![Page 146: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/146.jpg)
Gyakorlo feladat
Kirandulas soran 100 meterenkent feljegyeztuk a tengerszint felettimagassag ertekeket.
1 Volt a kirandulas soran olyan szakasz, amikor sık terepen haladtunk?
2 Hany olyan szaz meteres szakasz volt, amikor emelkedon haladtunk?
3 Mekkora volt a kirandulas soran a teljes szintemelkedes? (Es aszintcsokkenes?)
4 Hanyszor 100 meteres volt az a leghosszabb szakasz, aholfolyamatosan emelkedon haladtunk?
5 Mekkora volt a 100 meter alatt megtett legnagyobb szintemelkedes?
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 75 / 76
![Page 147: Programozás I. - 3. eloadás Tömbök a C#-ban Metódusok C# ...szatyika.hu/files/ProgI03.pdf · T ombbel v egezhet}o tev ekenys egek C#-ban A tev ekenys egek sorrendje: 1 Deklar](https://reader031.vdocuments.mx/reader031/viewer/2022041502/5e2285d2b49541023f0dea67/html5/thumbnails/147.jpg)
Felhasznalt irodalom
Korabbi evek OOP diasorai
Szlavi Peter, Zsako Laszlo: Modszeres programozas: Programozasitetelek (Mikrologia 19). ELTE TTK, 2002
Andrew Troelsen: A C# 2008 es a .NET 3.5. Szak Kiado, 2009
Sergyan (OE NIK) Programozas I. 2013. szeptember 23. 76 / 76