Vbscript 生成序列的前10个数字

Vbscript 生成序列的前10个数字,vbscript,sequence,qtp,series,Vbscript,Sequence,Qtp,Series,我一直在尝试创建以下序列: 2,7,17,37,67,。。。 我必须打印该系列的前10个数字 为此,我创建了以下内容: option explicit Dim m,n,i,str,d m=2 d=10 n=7 For i=0 to 10 n=n+d d=d+10 str=str&n&vbcrlf msgbox str next 我无法打印前两个数字,2和7,因为它们是在for循环之前声明的。即使我将它们存储在名为str的变量中,它们也会在每次执行后打印出来。有没有办法将

我一直在尝试创建以下序列:

2,7,17,37,67,。。。
我必须打印该系列的前10个数字

为此,我创建了以下内容:

option explicit
Dim m,n,i,str,d

m=2
d=10
n=7
For i=0 to 10
n=n+d
d=d+10

str=str&n&vbcrlf

msgbox str
next

我无法打印前两个数字,
2
7
,因为它们是在for循环之前声明的。即使我将它们存储在名为
str
的变量中,它们也会在每次执行后打印出来。有没有办法将这两个值相加并只打印一次。

在开始运行序列之前,可以将初始值
m
添加到字符串中。然后,将
n
的值附加到循环开头而不是结尾的字符串中,以便捕获
n
的初始值。例如:

m=2: d=10: n=7
str = m & vbCrLf              ' Capture initial value of m

For i = 1 to 9
    str = str & n & vbCrLf    ' Capture initial value of n
    n = n + d
    d = d + 10
Next

MsgBox str
请注意,您现在只循环了9次,因为您已经在循环之前捕获了序列中的第一个数字(
m

我还将
MsgBox
移动到循环之外,以便在生成完整的10个数字序列后,它只出现一次