Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: VB:arvonta

Sivun loppuun

ollistudio [12.05.2003 19:14:31]

#

eli jos esim. nyt teen pelin jossa täytyy arvata minkä kiven kone valitsi niin miten saan koneen valitsemaan sattuman varaisesti mikä se on?

Antti Laaksonen [12.05.2003 19:24:09]

#

Satunnaislukuja tarvitset. Olisit kyllä voinut lukea tuon parin päivän takaisen viestiketjun: https://www.ohjelmointiputka.net/keskustelu/1642-randomizer

ollistudio [12.05.2003 19:48:51]

#

TÄMÄ ON VB:lle!

LL [12.05.2003 20:22:44]

#

QB:hän kääntyy pikku fiksailujen jälkee vaivatta VB:lle.

VB:ssähän satnnaisluvut arvotaan näin:

luku = int(rnd * maksimi)

ollistudio [13.05.2003 08:32:38]

#

voisiko joku vääntää tuton?

vipemype [13.05.2003 14:22:26]

#

Eh, tutoa yhestä random komennosta (vai mikä nyt onkaan)? Jokatapauksessa https://www.ohjelmointiputka.net/hak/?kieli­=Visual Basic&nimi=Rnd voisi auttaa.

ez [13.05.2003 14:26:33]

#

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..

snakari [13.05.2003 14:41:11]

#

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?

Blaze [13.05.2003 18:12:54]

#

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()

thefox [13.05.2003 18:15:31]

#

Tai Cint(4.67).

ollistudio [14.05.2003 18:33:18]

#

Olen aloittelija ja typeräpyyntöni kuuluu näin: VOisitteko tehdä koko koodin etta voisin oppia sen?

trinit [14.05.2003 19:10:40]

#

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?


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta