Hogyan tudom ezt megoldani c#-ban?
van egy programom ami 0 és 9 között kisorsol egy számot, ezt megismétli 6-szor, majd a számokat hozzáadja egy string változóhoz úgy hogy közbe szöveggé konvertálja és utána a string-et beleírja egy szövegfile-ba.
az lenne a gond hogy nem tudom hogy oldjam meg azt hogy kiszűrjem az ismétlődéseket?
megtudnám azt csinálni hogy a string-eket beleírom egy tömbbe de akkor minden sorsoláskor végig kéne mennem a tömbön és ez egy bizonyos számú sorsolás után már elég sokáig tartana.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Csinálsz egy List-et, ahhoz hozzáadod a számot kisorsoláskor.
Majd a következő sorsoláskor a list.Contains(x) metódussal ellenőrzöd, hogy a listában benne van-e az adott szám. Ha benne van, akkor sorsolsz újat, egészen addig, amíg nem kapsz egyedi számot.
És nem, ez nem tartana soká, nyugi :) A mai gépeknek ez nem művelet, pár ms alatt megold egy ilyen problémát.
Az a kérdés, hogy mennyire kell szimuláld azt, ahogyan ez a való életben történne. Ha lenne 10 golyód egy urnában, mindegyiken lenne egy szám 0-9-ig és az lenne a követelmény, hogy sorsolj ki 6-ot úgy, hogy nem ismétlődhetnek az értékek, akkor az lenne a logikus, hogy amiután kihúztál egy számot az urnából, azt mát nem is teszed vissza, hogy ne tudd véletlenül sem azt választani.
Ha ezt a megközelítést használnéd a programodban is, akkor bettenéd egy List<int> listába a számokat 0-től 9-ig és mindig amikor egyet kisorsoltál akkor kitörlöd a listából. (A sorsolás alatt azt értem, hogy véletlenszerűen kiválasztassz egy elemet a listából.)
Remélem jól értettem a problémádat.
de az úgy nem jó mert töbször ismétlem meg a sorsolást.
tehát a stringek ne ismétlődjenek de a stringen bellül a karakterek ismétlődhetnek, ezt kihagytam a leirásból.
További kérdések:
Minden jog fenntartva © 2025, 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!