如何设置“指定文本”出现的比率??
本帖最后由 zjg2003 于 2009-5-14 12:19 编辑比如有这么四个指定文本:A、苹果B、香蕉C、桔子D、菠萝
现在想用随机的方法选择其中的一个,并且设置 “A、苹果”出现的比率为50%
“B、香蕉”出现的比率为30%, “C、桔子”出现的比率为15%
“D、菠萝”出现的比率为5%
这样应该效果的代码应该怎么写,请各位前辈指点,谢谢! 个人想法,只供参考,随机数为0-100,0-50指定为A、苹果 51-80指定为B、香蕉。。。。。。。。 本帖最后由 lynfr8 于 2009-5-14 04:52 编辑
参考ddx13思路,顺便添加些情调,写了这个“艳福之签”
其实就是随机1-100抽取一个数字
1-50为一组,51-80为二组,80-95为三组,95-100为四组
随机数字触发的事件集合显示出来的概率就分别为50%,30%,15%,5%
如图:
代码如下:#include <GUIConstantsEx.au3>
Example()
Func Example()
Local $love,$rand,$msg
GUICreate(" 艳福之签 ", 320, 120, @DesktopWidth / 2 - 160, @DesktopHeight / 2 - 45, -1, 0x00000018)
GUISetBkColor(0xE666CC)
GUICtrlCreateLabel("By lynfr8", 200, 75, 60, 20)
GUICtrlCreateLabel("四位佳人等待着你爱的呼唤"&@CRLF&"吖娇 芙蓉姐姐 林志玲 李宇春"&@CRLF&"老兄,看你运气咯", 50, 25, 300, 50)
$love = GUICtrlCreateButton("抽根姻缘签", 40, 75, 100, 20)
GUISetState()
$msg = 0
While $msg <> $GUI_EVENT_CLOSE
$msg = GUIGetMsg()
Select
Case $msg = $love
$rand=Random(1,100,1)
If $rand >=1 And $rand<=100 Then
If $rand < 51 Then
MsgBox(4096, "", "下下签!你将来的老婆是芙蓉姐姐!签号为"&$rand)
ElseIf $rand <81 Then
MsgBox(4096, "", "中下签!你将来的老婆是李宇春!签号为"&$rand)
ElseIf $rand < 95 Then
MsgBox(4096, "", "上签!你将来的老婆是吖娇!签号为"&$rand)
Else
MsgBox(4096, "", "上上签!你将来的老婆是林志玲!签号为"&$rand)
EndIf
Else
EndIf
EndSelect
WEnd
EndFunc 主要是循环结构一定要处理好,其他的没什么太多技术含量 谢谢两位,根据这个思路完全OK! 有用,长知识了
页:
[1]