C# tömbök

10. osztály 10évf_c# C# programozás Programozás

A tömb az az adattípus, amikor egy adott típusú változóból egy sorozatot, vagy vektort, mátrixot készítünk. A tömb egy összetett homogén adatstruktúra, melynek tetszőleges, de előre meghatározott számú eleme van. Az elemek típusa azonos. A tömb lehet egy vagy többdimenziós, a dimenzió száma nem korlátozott. Az egydimenziós tömböket vektoroknak hívjuk.
Általános szintaxis: Típus[] tömbnév = new Típus[hossz];

A tömbök elemeinek sorszámozása 0-tól kezdődik, az utolsó elem száma pedig elemek száma-1.
Tehát a szamok tömb elemei: 0. elem az 5, az utolsó elem pedig a szamok[4] amelynek értéke 2
Fontos megjegyezni, hogy a tömb statikus. Ha egyszer beállítottuk a méretét, nem lehet megváltoztatni. Azt viszont gond nélkül megtehetjük, hogy újra lefoglaljuk neki a helyet, de ekkor a benne tárolt adatok elvesznek (kivéve ha lementettük őket).

Tömb elemeinek kiíratása:

  • For ciklussal:
  • Foreach ciklussal

Példa 1

Nézzünk egy példa tömböt. Töltsünk fel egy 10 elemű tömböt 0-100 közötti véletlen számokkal! Rendezzük növekvő sorrendbe!
A tömb elemeinek növekvő sorba rendezése az Array.Sort(tömbneve) metódussal történeik. Ha szeretnénk fordított sorrendben kiíratni őket, akkor elöször rendezzük növekvőbe, majd az Array.Reverse(tömbneve) metódussal megkapjuk a fordított sorrendet!

Példa 2:

Nézzünk egy másik példát. Állítsunk elő 50 db egész számot -100 és 100 között! Írassuk ki őket 5 sorba! Írjuk ki a pozitív páros számokat is! Ha nincs egy sem, akkor ezt: „Nincs pozitív páros szám.” Itt a feladat második része miatt használunk tömböt, hogy meg tudjuk vizsgálni, van-e közöttük pozitív páros szám.

Nézzünk egy 2 dimenziós tömböt:
int [ , ] szamok2d = new int[ 1 , 2 ];
string [ , ] szoveg = new string [10, 9];

Vesszővel választjuk el a dimenziók számát. A többdimenziós tömbök elemeinek feltöltését egymásba ágyazott ciklusokkal valósítjuk meg.

Hozzunk létre egy 3×3-as „mátrixot”, töltsük fel véletlen számokkal. A többdimenziós tömböknél a tömb nagyságát a Tömb.GetLength(dimenzio száma) függvénnyel kérdezzük le. A tömb elemeinek feltöltéséhez több egymásba ágyazott ciklust használunk.

A következő példában egy 3×3-mas tömböt töltünk fel „kézzel”, majd kiíratjuk a tömb elemeit 3×3-as formában.

Egy halgazdaság próbafogást rendez, 5 halat fognak ki, és vizsgálják a súlyukat és méretüket.
Az egyszerűség kedvéért dkg és cm mértékegységet használnak.
A program feladatai:mennyi a halak összsúlya?
– Mennyi a legkisebb súly? Milyen fajta hal?
– Mennyi a legnagyobb súly? Milyen fajta hal?

Feladat: Töltsünk fel egy 10 elemű tömböt 1-20 közötti véletlenszámokkal, úgy, hogy ne ismétlődjenek a tömbben a számok!

Feladat: Készítsünk egy órarendet, amit egy kétdimenziós tömb tárol. Írassuk ki a tömb összes elemét! Írassuk ki csak 1db óra adatát! Az átláthatóbb adatok miatt a tömbbe beírtam a napok neveit is.

Feladat: Totó
Készítsünk programot, amely totó tippeket sorsol! A feladatot 2 tömb segítségével oldjuk meg! Az egyik tömb tartalmazza az elemeket (1,2,x) a másikat pedig töltsük fel véletlenszerűen az első tömb elemeivel!

Feladat: min,max, megszámlálás, átlag gyakorlása.:
Állítson elő véletlenszerűen 40 számot a [-20, 20] tartományból!

  • Állapítsa meg pozitív vagy negatív számból van-e több? A választ
    és a darabszámokat írja a képernyőre!
  • Hányszor fordult elő a 7-es szám?
  • Van-e a számok között 0?
  • Adja meg a legkisebb szám indexét!
  • Adja meg a negatív számok átlagát!
  • Adja meg melyik a legkisebb, és a legnagyobb szám!
  • Melyik volt a pozitív számok közül a legkisebb?
  • Melyik volt a negatív számok közül a legnagyobb?
    -Írassa ki növekvő sorrendben a számokat!
    -Írassa ki csökkenő sorrendben a számokat!