Programozás C# -ban Tömbök.

Slides:



Advertisements
Hasonló előadás
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Advertisements

Tömbök C#-ban.
Programozás III KOLLEKCIÓK 2..
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Objective- C Bereczki Gréta Tamara
BMEEOVKMKM4 Házi feladat megoldás áttekintés
Adatbányászati technikák (VISZM185)
Öröklődés 2..
© Kozsik Tamás Tömbök, kollekciók és egyéb alaposztályok.
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
Csala Péter ANDN #4. 2 Tartalom  C# - ban előre definiált típusok  Változók  Változókkal műveletek  Elágazás  Ciklus.
Bevezetés a Java programozásba
Osztályok Garbage collection.  általában minden osztálynak vannak adattagjai és/vagy metódusai ◦ adattagok megadása:  [láthatóság] [static] [final]
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.
Parancssori argumentumok Primitív típusok Operátorok Vezérlési szerkezetek Tömbök Ürmös Beáta, 2011.
Tömbök ismétlés Osztályok Java-ban Garbage collection
Borland C/C++ mintapéldák tömbökre
Egy feladat megoldásának gondolatmenete. Feladat: Generáljuk véletlen számokat 1 és 6 között, amíg legalább 10 darab egyes és 10 darab hatos nem lesz.
A C++ programozási nyelvSoós Sándor 1/15 C++ programozási nyelv Gyakorlat hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet.
Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék
A szövegszerkesztés története
P ROGRAMOZÁS C# - BAN Kivételkezelés. P ÉLDA I. Nullával való osztás miatt kapjuk a hibaüzenetet.
Programozás Operátorok C# -ban.
Programozás C# - ban Feladatsorok.
Objektumok. Az objektum információt tárol, és kérésre feladatokat hajt végre. Az objektum adatok (attribútumok) és metódusok (operációk,műveletek) összessége,
A valós világ modellezése. Az embert a valós világ modellezésekor a következő gondolatok vezérlik: Absztrakció Megkülönböztetés Osztályozás Általánosítás,
Objektumorientált tervezés és programozás II. 3. előadás
Összetett adattípusok
VI. Konténerek 18. Tömbök 19. Rendezés, keresés, karbantartás
Adattáblák kezelésére létrehozott automatikus formok Páll Éva Boglárka.
Szabványos függvények a Pascalban. Bevezetés Pascalban a függvények feladata, hogy a bemenő paraméterekből előállítsák a függvényértékeket Függvényeket.
Tömbök és programozási tételek
excel, (visual basic) makrók gyorstalpaló
1. Gyakorlat - Alapok 1. Írjon konzolprogramot, amely kiírja a “Hello ELTE” üzenetet! Használja a System.out.println() -t! 2. Írjon konzolprogramot, amely.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Javascript Microsoft által készített kiegészítése Statikus típusosság Nagy projektek Windows 8 fejlesztésénél WinRT egy részét ebben írták Nyílt forráskódú,
V 1.0 Szabó Zsolt, Óbudai Egyetem, Programozási Paradigmák és Technikák Programozási eszközök Interfészek Generikus.
Minden lépés, minden szó Legyen tiszta, mint a hó, ahol járok Te legyél az út!
Java programozási nyelv Tömbök
Generics Krizsán Zoltán. Bemutató A.NET 2.0 verziótól. A.NET 2.0 verziótól. Típusparaméter Típusparaméter Más nyelvben ez a template (sablon). Más nyelvben.
Egyenesvonalú (lineáris) adatszerkezetek
Objektum orientált programozás
2. Gyakorlat Zalatnai Csongor
Programozás I. Matematikai lehetőségek Műveletek tömbökkel
Programozás III KIVÉTEL – CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban.
1 Mivel foglalkozunk a laborokon? 7. hét: Do-Loop-Until Do-Until-Looptömbök Function 7. hét: Do-Loop-Until és Do-Until-Loop ciklusok. Egy indexes tömbök,
Programozás III KOLLEKCIÓK.
Pole (array of...).  Zložený datový typ na ukladanie viacerých premených  Zápis: var meno_pola : array [ konce intervala ] of základný typ ; Základné.
Programozás III CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van.
INFOÉRA 2006 Nagypontosságú aritmetika I.
Programozási alapismeretek * A Zh-írás módszertana.
Feladatok a lista adatszerkezethez Összeállította: Gergely János.
Excel programozás (makró)
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás I. 3. gyakorlat.
1 Függvények használata – az első függvénynél a formulát háromszor be kell írni, rendre az x, x+h, x-h argumentumokkal, – a második függvénynél az új (feltételes.
Opencms modul fejlesztés Krizsán Zoltán. Modulok fajtái Nincs előírás, csak tipikus tennivalók: –Content type: új típus(oka)t vezet be. –Template: új.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Típusosztályok. Számosztályok. Math és StrictMath matematikai.
TÁMOP /1-2F JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam Osztályok, objektumok definiálása és alkalmazása. Saját.
BME VEGYÉSZMÉRNÖKI ÉS BIOMÉRNÖKI KAR
Excel programozás (makró)
A szövegszerkesztés története
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
B M Java Programozás 1. Gy: Java alapok IT A N Ismétlés ++
3. osztályban.
Filmes példaalkalmazás I.
Függvénysablonok használata
Előadás másolata:

Programozás C# -ban Tömbök

Véletlen szám generálás C#-ban véletlen számot a Random osztály segítségével generálhatunk Első lépésben egy példányt kell készíteni a Random osztályból: Random rnd = new Random(); Ezzel rnd néven létrejött egy példány a Random osztályból, ezen keresztül használhatjuk a következő metódusait: rnd.Next(max); 0 és max közötti egész számot ad vissza rnd.Next(min,max); min és max közötti egész számot ad vissza Rnd.NextDouble(); 0.0 és 1.0 közötti valós értéket ad eredményül

Véletlen szám generálás Random rnd = new Random(); int a; double x; a= rnd.Next();  0 <= a <= 2,147,483,647 a= rnd.Next(1000);  0 <= a < 1000 a= rnd.Next(10,99);  10 <= a < 99 x= rnd.NextDouble();  0.0 <= x <= 1.0

Tömb Többször adódik olyan feladat, amelyben több azonos típusú adatot kell tárolni, majd feldolgozni. Pl. Kérjünk be 10 osztályzatot 1-5 között, majd számoljuk ki az átlagot Első, nem túl hatékony megoldás az, ha létrehozunk 10 egész változót… Másik megoldás a tömbök használata

Tömb fogalma A tömb homogén adatszerkezet, melynek elemeit a tömbön belül elfoglalt helyük azonosít Homogén: Minden eleme kizárólag azonos típusú lehet (egész, valós, stb…) Tömböm belül elfoglalt helyük azaz az indexük segítségével tudjuk azonosítani az egyes tömb elemeink értékét!

Tömb A Tömb neve 2 5 Érték Index A tömb neve: A A jobb oldal: értékek 1 2 5 3 4 6 7 8 9 10 A tömb neve: A A jobb oldal: értékek A bal oldal: indexek Hivatkozás a tömb elemeire: A[6] = 1 A[3] = 3

Tömb deklarációja A tömb deklarációjához megadjuk a típusát, majd mögé tesszük szögletes zárójelpárt [], aztán jöhet a tömb neve. Ezzel még a memóriában nem foglalódik hely a tömbnek int[] a; Ahhoz, hogy a memóriában foglalódjon hely a tömb számára a new operátor és a tömb elemszámának megadása szükséges a= new int[10];

= Tömb deklarációja int[]a= new int[10]; int[] a; a= new int[10]; típus int[] a; a= new int[10]; int[]a= new int[10]; A 1 2 3 4 5 6 7 8 9 10 = név elemszám A két deklaráció ugyanaz, általában a második, tömörebb megoldást használjuk! A deklarációval létrejön egy 10 elemű egészeket tartalmazó tömb, amelyben minden elem értéke 0.

Tömb deklarációja A tömb első elemének indexe 0, a másodiké 1 stb… A tömb utolsó elemének indexe egyel kevesebb, mint az elemszáma A tömb egyes elemeit a tömb neve mellett elhelyezkedő szögletes zárójelbe tett index segítségével érhetjük el.

Tömbelemek elérése Értékadás tömbelemnek: a[5] = 10; 2 3 4 5 10 6 7 8 9 Értékadás tömbelemnek: a[5] = 10; Tömbelem értékének kiolvasása: int b = a[8];  b = 0

Tömbelemek ellátása kezdőértékkel A tömbelemekhez a deklarációnál rendelhetünk kezdőértéket (kezdőértékkel való ellátás: inicializálás) int a[] = new int[10] {3,4,53,23,102,43,0,53,33,87}; A 1 3 2 4 53 23 5 102 6 43 7 8 9 33 10 87

int elemszam = a.Length; Tömb elemszáma A tömb elemszámát nem kötelező deklarációnál megadni: int a[] = new int[] {3,4,53,23,0,53,33,87}; A tömb elemeinek számát a tömb length tulajdonságából olvashatjuk ki: int elemszam = a.Length; (elemszam = 8)

Tömb feldolgozása A tömb feldolgozása azt jelenti, hogy végiglépkedünk a tömb elemein és különböző műveleteket hajtunk végre rajtuk. A tömb elemeit általában for ciklus segítségével dolgozzuk fel for (int i=0; i < a.Length; i++) { a[i] elem feldolgozása } a[i]-t a ciklusmagban aktuális tömbelemnek nevezzük!

Tömb feltöltése véletlen számokkal int[] a = new int[10]; Random rnd = new Random(); for (int i=0; i < a.Length; i++) { a[i] = rnd.Next(100); Console.WriteLine("a[{0}] = {1} ",i,a[i]); } Létrehozunk egy példányt a Random osztályból A for ciklus kezdőértéke 0 Ha az i (ciklusváltozó) értéke nagyobb mint a tömb elemszáma akkor a ciklus után folytatjuk a végrehajtást, különben Végrehajtjuk a ciklusmagot, amelyben az aktuális tömbelem a[i] –nek adunk egy véletlen értéket 0-100 között Kiírjuk formázottan az aktuális tömbelemet, majd visszaugrunk a 3–as lépésre

Tömb feltöltése felhasználói bevitellel int[] a = new int[10]; for (int i=0; i < a.Length; i++) { Console.WriteLine(”Kérem az {0} .-ik számot: ”, i+1); a[i] = Int32.Parse(Console.ReadLine()); } A for ciklus kezdőértéke 0 Ha az i (ciklusváltozó) értéke nagyobb mint a tömb elemszáma akkor a ciklus után folytatjuk a végrehajtást, különben Végrehajtjuk a ciklusmagot, amelyben kiírjuk, hogy kérjük az aktuális (i) tömbelemet, majd az a[i] –ik elemét beolvassuk a Console.ReadLine() –al. Visszaugrunk a 3–as lépésre Ezzel a tömbelemek nem lesznek kiírva a képernyőre!

Tömb elemeinek kiírása int[] a = new int[10]; for (int i=0; i < a.Length; i++) { Console.WriteLine("a[{0}] = {1} ",i,a[i]); }

Foreach ciklus A ciklusok negyedik fajtája C#-ban a foreach ciklus, amelynek segítségével egy gyűjtemény elemein (tömb) tudunk végighaladni: foreach (típus változónév in tömbnév) { változónévben tárolt aktuális tömbelem feldolgozása }

Tömb elemeinek kiírása II. foreach (int x in a) { Console.WriteLine(x); }

Feladatok I. Töltsünk fel egy 10 elemű tömböt billentyűzetről: Írassuk ki a tartalmát fordított sorrendben Számítsuk ki az elemek összegét Átlagoljuk a tömbelemeket Írassuk ki a páros elemeket Számoljuk meg, hogy hány két jegyű szám van a tömbben Írassuk ki az egyjegyű számokat Számítsuk ki a páratlan számok összegét Számoljuk meg hány nullára végződő szám van a tömbben

Feladatok II. Töltsünk fel egy tömböt véletlenszerű 3 jegyű egész számokkal Számítsuk ki az elemek összegét Számítsuk ki az elemek átlagát Számoljuk meg hány szám van 500 felett! Írassuk ki a 9 el kezdődő és 5 el osztható számokat a tömbből Dobjunk egy dobókockával egymás után ötvenszer, az eredményeket tároljuk el! Számoljuk ki a dobások átlagát Számoljuk meg hány hatos dobás történt Számoljuk meg hány dobás volt páratlan

Feladat III. Kérjük be egy dolgozó bruttó fizetését 12 hónapra. Számoljuk ki mennyi SZJA –t fizet Számoljuk ki mennyi egészségügyi hozzájárulást és nyugdíjalapot fizetett