eli jos esim. nyt teen pelin jossa täytyy arvata minkä kiven kone valitsi niin miten saan koneen valitsemaan sattuman varaisesti mikä se on?
Satunnaislukuja tarvitset. Olisit kyllä voinut lukea tuon parin päivän takaisen viestiketjun: https://www.ohjelmointiputka.net/keskustelu/1642-randomizer
TÄMÄ ON VB:lle!
QB:hän kääntyy pikku fiksailujen jälkee vaivatta VB:lle.
VB:ssähän satnnaisluvut arvotaan näin:
luku = int(rnd * maksimi)
voisiko joku vääntää tuton?
Eh, tutoa yhestä random komennosta (vai mikä nyt onkaan)? Jokatapauksessa https://www.ohjelmointiputka.net/hak/?kieli=Visual Basic&nimi=Rnd voisi auttaa.
Kannattaa vielä koodin alkuun laittaa vaikka randomize timer
Kääntää tuo? noh, jos sulla on vaikka pelissä viis kiveä niin laitat maksimin kohdalle vitosen ja kone arpoo luvun 1-5! Rnd tulee randomista ja int integeristä, se pyöristää arvotun numeron kokonaisluvuksi...
randomize timer sitä varten, että siihen tulee jonkinlaista satunnaisuutta..
Hmm.. eikös INT pyöristänyt esim. 4.67:n neloseks? Jos pyöristi niin koodi menis näin: Luku = Int(Rnd * 5) + 0.5 Näin menee pyöristykset kohilleen..
lainaus:
noh, jos sulla on vaikka pelissä viis kiveä niin laitat maksimin kohdalle vitosen ja kone arpoo luvun 1-5
No eikö se ole silloin 0-4?
lainaus:
Hmm.. eikös INT pyöristänyt esim. 4.67:n neloseks?
Juu, jos tahtoo oikeaoppista pyöristämistä (4.67->5) oikea funktio on round()
Tai Cint(4.67).
Olen aloittelija ja typeräpyyntöni kuuluu näin: VOisitteko tehdä koko koodin etta voisin oppia sen?
lainaus:
VOisitteko tehdä koko koodin etta voisin oppia sen?
Seuraavassa arvotaan luku väliltä 1-5 ja näytetään se MsgBox:ssa
Dim ArvottuLuku As Byte ' tai Integer mikäli luvut voivat olla pienempiä kuin 0 ja suurempia kuin 255 Randomize Timer ' Alustetaan satunnaislukugeneraattori ArvottuLuku = CInt(Rnd * 5) + 1 ' Arvotaan luku väliltä 0-4 ja lisätään tulokseen 1 MsgBox "Arvottu luku oli: " & ArvottuLuku
edit: tällaista koodiako hait?
Aihe on jo aika vanha, joten et voi enää vastata siihen.