一个vbscript竞猜游戏的问题
vbscript吧
全部回复
仅看楼主
level 1
qingfengyuan 楼主
Sub GuessANumber Dim Guess, RndNum RndNum = Int((100) * Rnd(1) + 1) Guess = CInt(InputBox("Enter your guess:",,0)) Do If Eval("Guess = RndNum") Then MsgBox "祝贺你!猜对了!" Exit Sub Else Guess = CInt(InputBox("对不起,请再试一次",,0)) End If Loop Until Guess = 0End SubGuessANumber虽然用了随机函数,但每次的答案都是固定的比如我的机子上每次都是71请问为什么?能不能帮我解决了?
2007年04月21日 04点04分 1
level 1
原因很简单 就是在程序的第三行中的RND的作用,当括号中的数字大于0时,它将产生一个恒定的直为0.705547,所以那个数字将定位为71,前提是年明白INT的作用和RND的作用
2007年05月17日 17点05分 2
level 1
中奖游戏:
Dim a,bb=1do while b<>-1 and b<>0Randomizea=Cint(rnd()*10) '将随机数扩大10倍,然后取整'document.write ab=Cint(inputBox ("请输入一个数:(-1退出)","随机数游戏"))if b<>-1 and b<>0 then if a=b then msgBox "恭喜您,中奖了。" else msgBox "别灰心,祝您下次中奖!" end ifend ifloop
2007年05月18日 02点05分 3
level 0
对的,你应该在Rnd函数前加上Randomize因子,不过好像Rnd函数用的也有点问题,3楼的
2008年01月03日 06点01分 5
level 1
3楼的a可能是0
2008年01月24日 08点01分 6
1