millä koodinpätkällä saa numerot arpomaan silleen että se ei arvo samoja numeroita uudestaan...
mulla tähän asti seuraavanlainen koodipätkä:
Int((100 * Rnd()) 1)
...eli se arpoo luvun väliltä 1-100, mutta miten saadaan että se ei arvo samaa numeroa toista kertaa?
NUMEROIDEN ARPOMINEN
4
1200
Vastaukset
- kerran
Avainsana on Randomize.
Koodi sinällään on oikein mutta kuten niin monesti on tälläkin palstalla puhuttu, tietokoneen "satunnaisluvut" eivät ole satunnaisia ilman alustusta. - variables
Jo arvotut numerot muistiin collectioniin, muuttujiia tms. ja jos tulee sama, uusi kierros.
- jokuvaan
Randomize täytyy olla, jotta yleensä lukujen generointi tapahtuu oikein.
Mutta, miten tutkia helposti, onko luku jo arvottu.
Olen tehnyt arvottavia lukuja vastaavan muuttujan, jonka tilaksi asetetaan 'True' kun luku on arvonnasta tullut.
Dim lukux(100) As Boolean
For x = 1 To 100
lukux(x) = False
Next x
Randomize
For s = 1 To 10 'kuinka monta lukua arvotaan, tässä 10
arvonta:
luku = Int((100 - 1 1) * Rnd 1)
'tutkitaan onko luku jo ennestään arvottu
'jos oli, tehdään uusi arvonta
If lukux(luku) = True Then GoTo arvonta
'tulostetaan arvottu luku ja
'merkataan se arvotuksi
Print luku
lukux(luku) = True
Next s- Joksako
'tulostetaan arvottu luku ja
'merkataan se arvotuksi
Print luku
lukux(luku) = True
Toi Print heittää sen numeropätkän vaan pystysuorassa alaspäin. Mites sä tulostat sen lbl.captioniin vaakaan "," eroteltuna ?
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kumpi vetoaa enemmän sinuun
Kaivatun ulkonäkö vai persoonallisuus? Ulkonäössä kasvot vai vartalo? Mikä luonteessa viehättää eniten? Mikä ulkonäössä?901757- 851242
- 1101123
- 71954
- 102884
Okei nyt mä ymmärrän
Olet siis noin rakastunut, se selittää. Onneksesi tunne on molemminpuolinen 😘56828- 47741
- 36732
Olen huolissani
Että joku päivä ihastut/rakastut siskooni. Ja itseasiassa haluaisin, ettei hän olisi mitenkään sinun tyyppiäsi ja pitäis47681- 33663