Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Voiko koneen arpoman luvun pistää riippumaan jostain

kotka91 [05.04.2005 14:16:43]

#

Eli voiko koneen arpoman luvun pistää riippumaan jostain esim. urheilupelissä pelaajan taidoista??KIITOS JO

Meitsi [05.04.2005 14:43:48]

#

Öö... tarkoitatko että haluat arpoa luvun tietyltä väliltä? Se onnistuu näin (ainakin muistaakseni):

arvottu_luku = minimi + (Rnd(1)*maksimi)

setä [05.04.2005 15:28:42]

#

Esim. tällai voi painottaa ervonnan eri vaihtoehtoja.

Select Case r
Case Is < 1.5 'a:n tod.näk.= 1.5/29
  erkki = "a"
Case Is < 1.6 'b:n tod.näk.= 0.1/29
  erkki = "b"
Case Is < 1.7 'c:n tod.näk.= 0.1/29
  erkki = "c"
Case Is < 2 'd:n tod.näk.= 0.1/29
  erkki = "d"
Case Is < 3.5 'e:n tod.näk.= 0.3/29
  erkki = "e"

Tässä on arvottu kirjaimia niiden esiintymistodennäköisyyden mukaan. Pelaajia voi painottaa suoraan niiden taitopisteiden mukaan. Tässä r on arvottu välille 0...29.

hunajavohveli [05.04.2005 16:35:37]

#

Ei koneen arpoma luku voi riippua pelaajan taidoista. Se on aina (0-1), jos ihan perus RND:tä käytät, mutta tuota lukua voit tietysti kertoa jollain toisella luvulla saadaksesi sen olemaan joltain muulta väliltä.

setä [05.04.2005 16:48:48]

#

Tohon esimerkkiin on jostain päässyt virhe eikä voi enää muokata. Pitää tietenkin olla d:n tod.näk. 0,3/29 ja e:n 1,5/29. Tällä Select-Case-rakenteella voi siis määrittää rajat, joiden mukaan kyseinen väli tulee valituksi halutulla todennäköisyydellä. Nuo välit määrätään sitten vain taitopisteiden mukaan.

Vastaus

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

Tietoa sivustosta