输出数字矩阵更简洁的方法?
程序目的,输出1 2 3
4 5 6
7 8 9
这样一个数字矩阵,下面是自己写的代码,感觉很复杂,有没有更简洁的方法?谢谢。
Dim $i, $j
Dim $s
Dim $1 = 1, $2 = 3
For $i = 1 To 3
For $j = $1 To $2
$s &= $j & " "
Next
$1 += 3
$2 += 3
$s &= @CRLF
Next
MsgBox(0, "", $s) 一个for...用mod吧...
$max = 3; 3*3矩阵
dim $var
For $i = 1 To $max*$max
$var &= " " & $i
If Mod($i,$max) = 0 Then
$var &= @CRLF
EndIf
next
MsgBox(0, "", $var)
[ 本帖最后由 rolaka 于 2008-10-23 21:25 编辑 ] 谢谢楼上的朋友,还有其它方法也可以提出来一起研究一下。 $var = inputbox("","")
$str = ""
$x = $var * $var
for $i = 1 to $x
$str = $str & $i & " "
if mod ($i,$var) = 0 then $str = $str & @CRLF
Next
MsgBox(0,"",$str)根据bat的代码思路也来一个。 原帖由 pusofalse 于 2008-10-24 16:36 发表 http://www.autoitx.com/images/common/back.gif
$var = inputbox("","")
$str = ""
$x = $var * $var
for $i = 1 to $x
$str = $str & $i & " "
if mod ($i,$var) = 0 then $str = $str & @CRLF
Next
MsgBox(0,"",$str)根据bat的代码思路也来一个。
貌似和我这差不多- -
回复 5# rolaka 的帖子
贴出来才发现和朋友的一样,莫怪。。。向你学习! 原帖由 pusofalse 于 2008-10-24 21:34 发表 http://www.autoitx.com/images/common/back.gif
贴出来才发现和朋友的一样,莫怪。。。
向你学习!
这bat我以前见过...用mod好似就是从那时候发觉的... 当成字符串处理:
$str="123456789"
$step=3
MsgBox(0, "Split test", StringRegExpReplace(StringRegExpReplace($str,"(.{"&$step&"})","\1"&@CRLF),"(.)","\1 "));
页:
[1]