Nyt ois sellanen pienoinen pulma. Pitäs saada sellanen koodinpätkä joka siis täyttää vaikka Labelin tai Text-boxin satunnaisella merkkijonolla. Eli kuinka luodaan satunnaisia merkkejä luova generaattori?
Visual Basic .NET APUA!!!
Spedelinko
5367
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 5
Vanhimmat
tietokoneella ei voi luoda satunnaisia lukuja tai numeroita. Tietokoneeseen kuuluu kyllä ns satunnasilukugeneraattori mutta sen antamat luvut ei ole satunnaisia vaan ne on ennustettavissa. Satunnaisia lukuja saa vaikka laittamalla jonkun ohjelman luomaan lukuja webkameran välittämästä kuvasta. No joo tätä et varmaan halunnut tietää mutta tässä sinulle pieni tietoisku.
Niin. Tuossa sinun vastauksessasi on vain sellainen pieni ongelma, että hieman suhteettomasti tuota asiaa perustelet. Satunnaislukugeneraattorin luomien arvojen ennakointi on mahdollista, jos saadaan tarpeeksi suuri otos sen tuottamia lukuja tai vieläkin parempaa, saadaan generaattorin koodi. Tilastomatemaattisesti pitänee paikkansa tämä generaattorin ennakoitavuus.
Kun en kuitenkaan halua TÄYSIN satunnaisia lukuja, niin tyydyn näennäisen satunnaisiin lukuihin, jos saan niitä ilman analogisen signaalin muutosta diskreetiksi dataksi. Tässä tapauksessa ilman tuota webcam-ehdotusta.
Oheinen funktio palauttaa jollainlailla sattumanvaraisen merkkijonon, joka koostuu isoista kirjaimista A-Z.
Function Satunnaismerkkijono(Pituus As Integer) As String
Dim iCount As Integer
Randomize
For iCount = 1 To Pituus
Satunnaismerkkijono = Satunnaismerkkijono & Chr(Int(Rnd() * 25) 65)
Next iCount
End Function
Visual Basic:ien ja QBasicin huomattava ero on, että QBllä voi tehdä parempia satunnaislukuja.
QBssa on funktio TIMER, joka palautaa sekuntien
määrän viime keskiyöstä. Lukuja tulee välillä 0-n.86 000.Ohjelman alkuun on hyvä laittaa
RANDOMIZE TIMER. VBssa ei ole sitä enkä suosittele RANDOMIZE SEC(TIME$). Lukuja väliltä
0-59. Kamera-idea oli hyvä.
PS. Miten tehdään vuodenajasta riippuvia
satunnaislukuja?
-Kysytään käyttäjältä "Montako lehteä näet
puista putoilevan?" RANDOMIZE lehdet%
Randomize Statement Example
This example uses the Randomize statement to initialize the random-number generator. Because the number argument has been omitted, Randomize uses the return value from the Timer function as the new seed value.
Dim MyValue
Randomize ' Initialize random-number generator.
MyValue = Int((6 * Rnd) 1) ' Generate random value between 1 and 6.