Kezdőoldal » Számítástechnika » Programozás » Turbo Pascal-ban lehetséges?

Turbo Pascal-ban lehetséges?

Figyelt kérdés
Lehetséges megadni 2 szám esetén, hogy a véletlenszerű generálás során a 2 szám között legalább 10 legyen a különbség, és hogy több szám esetén a számok közt 1-nél több legyen a különbség? (ne lehessen pl. 1,2,3,4,5,6,7,8,9,10)
2012. máj. 22. 14:08
 1/9 anonim ***** válasza:

Persze

csak a többi számot egyszerűen igaz hamis állításokkal kell megszabnod

2012. máj. 22. 14:10
Hasznos számodra ez a válasz?
 2/9 A kérdező kommentje:

Például:

szam1:=random(50);

szam2:=??

2012. máj. 22. 14:12
 3/9 A kérdező kommentje:
Vagy, hogy 4 szám 0 és 50 közt legyen, max. 2 lehet közülük egymás mellett, a többinek már legalább 10-el el kell térniük a többitől.
2012. máj. 22. 14:20
 4/9 iostream ***** válasza:
Legegyszerűbb megoldás, ha addig generálod a következő számot, amíg meg nem felel a feltételeidnek. Ez nem mindig működik, például ha a 2 számot az 1-15 intervallumban akarod generálni, és az elsőre kijön egy 8, akkor sehogy sem fogod tudni a másodikat megadni.
2012. máj. 22. 14:48
Hasznos számodra ez a válasz?
 5/9 A kérdező kommentje:

Köszönöm az eddigi segítségeket!

A véletlenszerűen generált számokat lehetséges növekvő sorrendben kiíratni?

2012. máj. 22. 14:57
 6/9 A kérdező kommentje:
Rájöttem.
2012. máj. 22. 15:00
 7/9 anonim ***** válasza:

2 szám esetén ez jó ha nincs semmilyen megkötés csak annyi hogy a különbség legalább 10 legyen, (a 2. szám mindig nagyobb lesz):

szam1:=random(50);

szam2:=szam1+10+random(50);

-----------------------------

Általános megoldás (ötlet) ami a többi esetre is működik amit kérdeztél az ,hogy számokat sorsolsz ki van 51 db sorjegyed melyek rendre 0,1,2,3,4...50 és ezek közül húzol véletlenszerűen visszatevés nélkül, ez már alapból kiszűri azt hogy 2x ugyan az a szám legyen.

Az hogy a kihúzott számnál a következő szám különbsége legalább 10 legyen azt úgy oldjuk meg hogy azokat a sorsjegyeket melyek különbsége kisebb mint 10 megsemmisítjük, ezt lehet feltételhez kötni hogy kell e megsemmisíteni ...

Apropó 0 és 50 közötti számot nem random(50) hanem random(51) állítja elő.(Úgy hogy lehet 0 és 50 is)

Az lenne a következő kérdés hogy a sorsjegyeket programozzam le?

Tömbbel. Legyen egy sorjegy tömb és legyen egy kisorsolt tömb. A sorjegy tömb méretét tekintsük úgy hogy egy változó tárolja, ami kezdetbe 51. Kezdetbe a tömböt töltsük fel 0 és 51 közti különböző egész számmal, leg kézenfekvőbb a tömbindexnek megfelelő értéket belerakni minden elemnek ...

2012. máj. 22. 15:09
Hasznos számodra ez a válasz?
 8/9 A kérdező kommentje:

Köszönöm, megpróbálkozom vele!

Akkor, ha 1-től 50-ig szeretném, random(50)+1?

2012. máj. 22. 15:18
 9/9 anonim ***** válasza:
@15:18 Igen.
2012. máj. 22. 15:23
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!