找回密码
 加入
搜索
查看: 4196|回复: 9

[AU3基础] 求输出结果的排列[已解决]

  [复制链接]
发表于 2010-4-10 14:36:08 | 显示全部楼层 |阅读模式
本帖最后由 仙乃日 于 2010-4-11 11:05 编辑


有代码如下:
Dim $nnn = "", $jj = ""
For $i = 3 To 49
        For $j = 4 To 11
                $nn = Log(1 / 2 ^ $j) / Log(1 - 1 / $i)
                Select
                        Case $nn <= 9
                                $nnn = "00" & Round($nn)
                        Case $nn >= 10 And $nn < 100
                                $nnn = "0" & Round($nn)
                        Case $nn >= 100
                                $nnn = Round($nn)
                EndSelect
                If $j < 10 Then
                        $jj = "0" & $j
                Else
                        $jj = $j
                EndIf
                Select
                        Case $i < 10
                                FileWriteLine("等价期数.txt", "00" & $i & "分之一概率-<" & $nnn & ">-期" & "等价于单双-" & $jj & "-期" )
                        Case $i > 10 And $i < 100
                                FileWriteLine("等价期数.txt", "0" & $i & "分之一概率-<" & $nnn & ">-期" & "等价于单双-" & $jj & "-期")
                        Case $i > 100 And $i < 1000
                                FileWriteLine("等价期数.txt", $i & "分之一概率-<" & $nnn & ">-期" & "等价于单双-" & $jj & "-期")
                EndSelect
        Next
Next
003分之一概率-<007>-期等价于单双-04-期   004分之一概率-<019>-期等价于单双-04-期   005分之一概率-<012>-期等价于单双-04-期
003分之一概率-<009>-期等价于单双-05-期   004分之一概率-<012>-期等价于单双-05-期   005分之一概率-<016>-期等价于单双-05-期
003分之一概率-<010>-期等价于单双-06-期   004分之一概率-<014>-期等价于单双-06-期   005分之一概率-<019>-期等价于单双-06-期
003分之一概率-<012>-期等价于单双-07-期   004分之一概率-<017>-期等价于单双-07-期   005分之一概率-<022>-期等价于单双-07-期
003分之一概率-<014>-期等价于单双-08-期   004分之一概率-<019>-期等价于单双-08-期   005分之一概率-<025>-期等价于单双-08-期
003分之一概率-<015>-期等价于单双-09-期   004分之一概率-<022>-期等价于单双-09-期   005分之一概率-<028>-期等价于单双-09-期
003分之一概率-<017>-期等价于单双-10-期   004分之一概率-<024>-期等价于单双-10-期   005分之一概率-<031>-期等价于单双-10-期
003分之一概率-<019>-期等价于单双-11-期   004分之一概率-<027>-期等价于单双-11-期   005分之一概率-<034>-期等价于单双-11-期
                                                                                 
006分之一概率-<015>-期等价于单双-04-期   007分之一概率-<018>-期等价于单双-04-期   008分之一概率-<021>-期等价于单双-04-期
006分之一概率-<019>-期等价于单双-05-期   007分之一概率-<022>-期等价于单双-05-期   008分之一概率-<026>-期等价于单双-05-期
006分之一概率-<023>-期等价于单双-06-期   007分之一概率-<027>-期等价于单双-06-期   008分之一概率-<031>-期等价于单双-06-期
006分之一概率-<027>-期等价于单双-07-期   007分之一概率-<031>-期等价于单双-07-期   008分之一概率-<036>-期等价于单双-07-期
006分之一概率-<030>-期等价于单双-08-期   007分之一概率-<036>-期等价于单双-08-期   008分之一概率-<042>-期等价于单双-08-期
006分之一概率-<034>-期等价于单双-09-期   007分之一概率-<040>-期等价于单双-09-期   008分之一概率-<047>-期等价于单双-09-期
006分之一概率-<038>-期等价于单双-10-期   007分之一概率-<045>-期等价于单双-10-期   008分之一概率-<052>-期等价于单双-10-期
006分之一概率-<042>-期等价于单双-11-期   007分之一概率-<049>-期等价于单双-11-期   008分之一概率-<057>-期等价于单双-11-期
求输出结果是否能如上方式排列呢?
还有另一个问题能否用红色标示结果中的数字呢?

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

发表于 2010-4-10 14:57:08 | 显示全部楼层
排列应该不难。红色的数字要看在哪里显示,记事本是不可能的;Edit控件也不行;富文本可以;Label控件组合也可以…
发表于 2010-4-10 17:21:33 | 显示全部楼层
本帖最后由 水木子 于 2010-4-10 17:47 编辑
For $i = 3 To 49
        For $j = 4 To 11
                $nn = Log(1 / 2 ^ $j) / Log(1 - 1 / $i)
                FileWriteLine("等价期数.txt", StringFormat('%03d', $i) & "分之一概率" & StringFormat('% 8s', Round($nn, 2)) & "期" & " =单双" & StringFormat('%03d', $j) & "期")
        Next
Next

评分

参与人数 1威望 +2 收起 理由
afan + 2

查看全部评分

 楼主| 发表于 2010-4-10 18:59:19 | 显示全部楼层
For $i = 3 To 49
        For $j = 4 To 11
                $nn = Log(1 / 2 ^ $j) / Log(1 - 1 / $i)
                FileWriteLine("等价期数.txt", StringFormat('%02u', $i) & "分之一概率" & StringFormat("%06s", Round($nn, 2)) & "期" & " =单双" & StringFormat('%02u', $j) & "期")
        Next
Next

使用StringFormat函数能将 6.1 转换成 006.10 吗?
发表于 2010-4-10 22:33:33 | 显示全部楼层
回复 4# 仙乃日
StringFormat 就是专门干这个的!
发表于 2010-4-10 23:41:00 | 显示全部楼层
Dim $txt = @ScriptDir & '\等价期数.txt'
Dim $nnn, $jj, $zout, $out[48 * 8 / 3][3], $x = 0, $xx = 0, $b = 0, $bb = 11 - 4 + 1
For $i = 3 To 49
        For $j = 4 To 11
                $nn = Log(1 / 2 ^ $j) / Log(1 - 1 / $i)
                $nnn = StringFormat('%03d', Round($nn))
                $jj = StringFormat('%02s', $j)
                $ii = StringFormat('%03s', $i)
                $out[$b * $bb + $x][$xx] = $ii & '分之一概率-<' & $nnn & '>-期等价于单双-' & $jj & '-期' & @TAB
                $x += 1
                If $x > $bb - 1 Then $x = 0
        Next
        $xx += 1
        If $xx > 2 Then
                $xx = 0
                $b += 1
        EndIf
Next
For $i = 0 To UBound($out) - 1
        $zout &= $out[$i][0] & $out[$i][1] & $out[$i][2] & @CRLF
        If IsInt(($i + 1) / 8) Then $zout &= @CRLF
Next
FileDelete($txt)
FileWrite($txt, $zout)
ShellExecute($txt)

评分

参与人数 1金钱 +20 收起 理由
水木子 + 20 学习了

查看全部评分

 楼主| 发表于 2010-4-11 11:07:07 | 显示全部楼层
回复  仙乃日
StringFormat 就是专门干这个的!
水木子 发表于 2010-4-10 22:33



    能说一下用StringFormat函数 具体如何将 6.1 转换成 006.10   ??
 楼主| 发表于 2010-4-11 11:07:48 | 显示全部楼层
感谢2位的解答!
发表于 2010-4-11 11:26:05 | 显示全部楼层
本帖最后由 水木子 于 2010-4-11 11:29 编辑

afan前辈的代码相当精辟,可以说是完全满足LZ的要求。
发表于 2010-4-12 09:49:45 | 显示全部楼层
真的得好了学AUTOIT,太强了。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-23 19:28 , Processed in 0.088543 second(s), 29 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表