循环 - 添加数字 - Visual Basic

时间:2012-11-05 13:37:48

标签: vb.net

因此程序必须将所有数字从“x”添加到“y”。

但它还必须显示所有添加的数字:

即。 10到20应显示10 + 11 + 12 + 13 + 14 + 15 + 16 + 17 + 18 + 19 + 20 = 165

这就是我所拥有的:

Dim firstnum As Integer = Val(TextBox1.Text)
    Dim secondnum As Integer = Val(TextBox2.Text)
    Dim sum As Integer = 0


    While firstnum <= secondnum

        sum = sum + firstnum
        firstnum = firstnum + 1

        Label3.Text = firstnum & "+"

    End While


    suum.Text = "  =  " & Val(sum)

3 个答案:

答案 0 :(得分:3)

以下内容:

Label3.Text = firstnum & "+"

每次进行循环时,覆盖 Label3中的值。您可能想要做的是将现有值与下一个数字连接

这应该可以帮助你:

Label3.Text = Label3.Text & firstnum & " + "

答案 1 :(得分:3)

Linq好吗?然后,您可以使用Enumerable.RangeEnumerable.Sum

Dim startNum = Int32.Parse(TextBox1.Text)
Dim endNum = Int32.Parse(TextBox2.Text)
Dim numbers = Enumerable.Range(startNum, endNum - startNum + 1) 'inclusive, therefore + 1
Label3.Text = String.Join(" + ", numbers)
suum.Text = numbers.Sum()

答案 2 :(得分:0)

你的Label3.Text只包含最后一个数字&#34; +&#34;在算法的最后。你应该替换

Label3.Text = firstnum & "+" 

Label3.Text = Label3.Text & firstnum & "+ "