2016-11-26 28 views
0

欲从X在标签显示加成数为y,即26 + 27 + 28 + 29 + 30 = 140。从X号码添加到y视觉基本

眼下LBL3显示:26 + 30 = 140.我希望它显示26 + 27 + 28 + 29 + 30 = 140.

这是我到目前为止。

Dim startingNum As Integer = Val(txtbx1.Text) 
    Dim endingNum As Integer = Val(txtbx2.Text) 
    Dim totalNum As Integer = (endingNum - startingNum) + 1 
    Dim totalSum As Integer = (totalNum/2) * (2 * startingNum + (totalNum - 1)) 

    For count As Integer = startingNum To endingNum Step 1 

     Me.lbl3.Text = startingNum & " + " & count & " = " & totalSum 

    Next count 
+0

每次程序确实'lbl3.Text = startingNum和 “+” &计数& “=”&totalSum'它*覆盖'lbl.Text'的值。 –

回答

0

试试这个:

Dim startingNum As Integer = Val(txtbx1.Text) 
    Dim endingNum As Integer = Val(txtbx2.Text) 
    Dim totalNum As Integer = (endingNum - startingNum) + 1 
    Dim totalSum As Integer = (totalNum/2) * (2 * startingNum + (totalNum - 1)) 
    Dim result as String = startingNum 

    For count As Integer = startingNum + 1 To endingNum Step 1 
     result = result & " + " & count 
    Next count 
    Me.lbl3.Text = result & " = " & totalSum 
+0

谢谢,它的工作原理! –

1

你也可以使用LINQ解决这个问题:

' parsing/validation omitted 
Dim numbers = Enumerable.Range (startingNum, endingNum - startingNum + 1) 

' will resolve to a call to String.Concat 
lbl3.Text = String.Join(" + ", numbers) & " = " & numbers.Sum()