Vbscript Vbs乘法表

Vbscript Vbs乘法表,vbscript,Vbscript,我正在为我的编程类制作资源,其实这是非常基本的脚本,我找到了这个网站,并浏览了一下,确实有很多关于脚本的有用的东西,但我搜索的东西不在列表中,或者我没有使用正确的关键字 不管怎样,我的问题是 我的老师让我写一个Vbs打印乘法表,我做了研究,这就是我现在的位置 dim sum, arraynum(), arrayline1, count, arraynum2(), arrayline2, arraynum3(), arrayline3, arraynum4(), arrayline4, array

我正在为我的编程类制作资源,其实这是非常基本的脚本,我找到了这个网站,并浏览了一下,确实有很多关于脚本的有用的东西,但我搜索的东西不在列表中,或者我没有使用正确的关键字 不管怎样,我的问题是 我的老师让我写一个Vbs打印乘法表,我做了研究,这就是我现在的位置

dim sum, arraynum(), arrayline1, count, arraynum2(), arrayline2, arraynum3(), arrayline3, arraynum4(), arrayline4, arraynum5(), arrayline5

count=1
sum=1
arrayline1=1

for count=1 to 5
    redim preserve arraynum(arrayline1)
    redim preserve arraynum2(arrayline2)
    redim preserve arraynum3(arrayline3)
    redim preserve arraynum4(arrayline4)
    redim preserve arraynum5(arrayline5)
    arraynum(arrayline1)=sum
    arraynum2(arrayline2)=sum*2
    arrayline2=arrayline2+1
    arraynum3(arrayline3)=sum*3
    arrayline3=arrayline3+1
    arraynum4(arrayline4)=sum*4
    arrayline4=arrayline3+1
    arraynum5(arrayline5)=sum*5
    arrayline5=arrayline5+1
    sum=sum+1
    arrayline1=arrayline1+1
next

wscript.echo join(arraynum) & vbcrlf & join(arraynum2) & vbcrlf & join(arraynum3) & vbcrlf & join
(arraynum4) & vbcrlf & join(arraynum5)

' Its printing like;
'   1 2 3 4 5
'   2 4 6 8 10
'   3 6 8 12 15
'   4 8 12 16 20
'   5 10 15 20 25

正如你所看到的,它们不是一条直线,我不能用输入来实现这一点,我的意思是获取一个输入并显示乘法表,我希望我说得足够清楚,如果不是太多的话,我可以问如何在它们之间加一个边界,或者是否可能。诀窍是对正在打印的值应用leftpadding:计算值包含的字符数,从固定数量中减去字符数,然后向值中添加相同数量的空格。 此示例将替换并左键填充
vbTab
字符。如果使用
vbTab
而不是默认空格来连接数组,则可以使用此函数

因为这是一个家庭作业,我还添加了一些代码,以递归方式获取数字的倍数,从0开始。只是为了引起一些好奇。我不建议只是复制粘贴它,它不符合您的要求:“从1开始”


谢谢回答@AutomatedChaos不,我不会复制粘贴它,而是尝试改进我的脚本。我做了更多的研究,现在我真的很接近了,但仍然有一些错误,我无法画出一条直线,我尝试了左填充,但每次它都会抛出一个错误,这就是我现在的位置`Dim MaxNum Dim x,y,sum2,sum MaxNum=inputbox(“请输入乘数范围:”)x=1 y=1 sum2=1表示y=1到MaxNum表示x=1到MaxNum redim preserve arraynum(sum2)arraynum(sum2)=sum2=sum2+1 sum=x*y下一个Wscript.Echo连接(arraynum,Chr(5)&VBtab)`
dim multiple

' Get the numbers 0 to 5
for each multiple in split(getMultiples(1,5), vbTab)
    ' print the multiplication table for each of this numbers
    wscript.echo trim(TabToLpad(getMultiples(multiple, 5), 10))
next

' Does the calculation and returns a Tab delimited string of all multiples
function getMultiples(nr, amount)
    getMultiples = 0
     ' As long as the amount is larger then 0, get the next multiple
    if amount > getMultiples then getMultiples = getMultiples(nr, amount-1) & vbTab & (nr * amount)
End function

' Pads each value in a tab delimited string with the nrPadChars spaces. Returns a string.
function tabToLpad(str, nrPadChars)
    dim part
    for each part in split(str, vbTab)
        tabToLpad = tabToLpad & string(nrPadChars - len(part), " ") & part
    next
End Function