Üdv Pascal tömb elem ismétlődés?
"Az a cél hogy egy n elemű tömbnek ne lehessen ugyanolyan tagja"
hát, ne tegyél bele..
sorry, de kicsit pontosíthatnál, egyedi típust kellene gyártani, vagy mit?
kell neki egy beszúró függvény, ami megcsinálja az ellenőrzést, pacalban (ahol ugye alapból nincs tagfüggvény) max ennyit lehet kihozni szerintem
Deklarálsz egy n elemű tömböt, majd ezt a tömböt feltöltöd 1-től n-ig számokkal. Aztán elindítod a véletlenszám generálást egy ciklusban. A véletlenszerűen kiválasztott szám lesz a tömb indexe. Vizsgálod, hogy a tömbben ezen az indexen nem nulla e az érték, ha nem az, akkor kinullázod, ha nulla, akkor új véletlenszámot generálsz addig, amíg olyan érték nem jön ki, ahol a tömbelem értéke nem nulla. A ciklust addig futtatod, amíg a kívánt mennyiségű adatot meg nem kaptad. A kiválasztott számokat menetközben is kiírathatod, vagy a program végén végigszaladsz a tömbön és kiírod azon indexeket, ahol a tömbelem értéke nulla.
Másik lehetőség, hogy nem nullázol találat esetén, hanem a tömbön belül felcseréled a kisorsolt értéket a tömb végén levővel (azaz sorsolsz egyet cseréled az utolsóval, majd még egy sorsolás csere az utolsó előttivel és így tovább), ebben az esetben arra kell figyelni, hogy a számtartomány, ahonnan sorsolsz is csökken, mert a kisorsolt darabszámokat le kell vonni belőle. Ha vége a sorsolásnak, akkor a tömb végén lesznek a kisorsolt elemek.
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!