输入若干正实数,个数不能预先确定.求这些正实数的和.要求分别使用do until…Loop

来源:百度知道 编辑:UC知道 时间:2024/06/30 14:18:35
输入若干正实数,个数不能预先确定.求这些正实数的和.要求分别使用do until…Loop
怎么写

在用Do While ...Lop 写出来的基础上 怎么做修改
Dim i As Long, s As Long, sum As Long, ins As String
s = 1

Do While (i <> -1)
goRe: ins = InputBox("请输入第" & s & "个正数,输入-1结束。(当前总和:" & sum & ")。", "input")

If IsNumeric(ins) = True Then
i = CInt(ins)
If i <= 0 And i <> -1 Then GoTo goRe
Else
GoTo goRe
End If

sum = sum + i
s = s + 1

DoEvents

Loop
MsgBox "你输入了" & s & "个数字,他们总和是" & sum & "。"
用 DO While loop 已经 写出来了 怎么做修改

其实不必拘泥于-1,只要你能保证都是正实数,可以规定输入0就结束循环,这样会更方便些[给InputBox赋初值0,如果不输入数据直接确定就可以结束循环了],当然也显得比较自然。

两个语句的不同之处在于:
DO While [] Loop 当[]为真时继续循环
DO Until [] Loop 直到[]为真时结束循环

也就是说,其他都一样,只是这里的条件正好相反而已。
自己改吧。