Miten tehdään semmone juttu, että kun ukon onni on 20, niin sen ukon voiton mahdollisuus kilpailussa on 40%, ja kun sen onni kasvaa kahdella, niin voiton mahdollisuus on 44% jne...
Jos nyt en aivan väärässä ole niin ihan yksinkertaisesti onni muutetaan prosenteiks kertomalla se kahdella ja ja toivottavasti osaat prosentti laskut koska.
Nii mutta voisko joku kirjottaa valmistaa koodia?
lainaus:
Nii mutta voisko joku kirjottaa valmistaa koodia?
vm% = onni% * 2
Ja ukon voiton tai häviön ratkaiseminen tapahtuu vertaamalla satunnaislukua väliltä 1 - 100 voiton mahdollisuuden prosenttiin:
RANDOMIZE TIMER IF INT(RND * 100) + 1 < vm% THEN PRINT "Ukko voitti!" ELSE PRINT "Ukko hävisi!" END IF
Satunnaisluvuista:
http://qb.ohjelmointiputka.net/?RANDOMIZE
http://qb.ohjelmointiputka.net/?RND
Tuollaiset algoritmit ovat pelikohtaisia, eikä voiton mahdollisuuden kannata antaa riippua pelkästään onnesta.. Eniveis..
_________________________ | onni x | voiton mahd. y | |--------|----------------| | 20 | 40% | | 40 | 44% | '------'------------------'
Jos tuossa nyt kerran on lineaarinen riippuvuus niin:
(kulmakerroin) k = (40-44) / (20-40) = -4 / -20 = 4 / 20 = 1 / 5 (ratkaistaan a) y = k(x + a) = kx + ka ka = y - kx a = (y - kx) / k = (40 - (20 / 5)) * 5 = 36 * 5 = 180 (eli) y = k(x + 180) (eli siis) voitonmahdollisuus = (onni + 180) / 5
Edit: Ai juma, luin väärin, katsoin että onni kasvaa kaksinkertaiseksi :-) No huu keers.
Aihe on jo aika vanha, joten et voi enää vastata siihen.