Mért indexel túl a tömb?
Hááát... Itt egy elég ronda próbálkozás, amelynek egyetlen erénye(?), hogy viszonylag szolgai módon ragaszkodik a programodhoz:
Hátha valaki kedvet kap (vagy csak nem bírja már idegekkel), és normálisabban is megírja.
ui.:Tudom, hogy ez egy érettségi feladatból volt, viszont én nem az alapján akartam megcsinálni amit írt hanem egy táblázatban akartam az egészet valahogy így:
Egyébként ez teljesen rossz megközelítés. Mi a helyzet akkor ha nem csak 9 féle áru van hanem 100 vagy végtelen?Nem csinálhatsz végtelen számú változótt mindegyik áruhoz.
Az ilyen feladatoknál (szóval az összes érettségi) úgy kell kezdeni, hogy megnézed milyen adataid vannak és ezek milyen kapcsolatban vannak egymással majd kitalálni hogy lehet ezeket jól tárolni.
Ugye most vannak valamilyen áruk, azoknak egy darabszáma hogy mennyi van belőle és vannak vevők akikhez tartoznak ezek az áruk.Ezen a vonalon elindulva csinálhatnál egy áru osztályt aminek van egy neve és darabszáma:
class Aru{
public string nev;
public int db
}
Na most ezek az áruk egy vevőhőz tartoznak, de mivel a vevőknek nincs semmilyen sajátos tulajdonsága így most két lehetőség is van. Az egyik hogy az 'Aru' osztályból csinálsz egy kétdimenziós tömböt. Ez a nyilvánvalóbb szóval csináljuk ezt.
Aru[,] aruk = new Aru[<max vevő>,<max áru>]
Az, hogy mekkora a két érték az a feladattól függ, le van írva, hogy mennyi vevő lehet maximum és egy vevőnél mennyi áru.Itt a tömb első indexe azt mondja meg hogy hanyadik vevő, a második hogy ahhoz a vevőhőz tartozó hanyadik áru.Szóval lesz egy vevő darabszám, és egy áru darabszám amit mindig nullázunk ha új vevő jön.
Most, hogy megvan az adatszerkezet már csak be kell olvasni az adatokat.
Soronként olvasva az adatokat minden sorra megnézzük, hogy mit olvastunk be.
Ha egy 'F' karakter jött az azt jelenti hogy új vásárló kezdődik vagyis a több első elemét kell növelni.
Ha valami más, akkor feltételzhetjük, hogy árut olvastunk be. Most meg kell nézni, hogy van-e már ilyen áru.Ha van akkor annak a darabszámát növeljük eggyel, ha nincs akkor hozzáadjuk a sor végéhez.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!