level 1
有一个任意的数字,不能确定数字的大小,也不能确定数字的位数,但是需要将数字一个一个拆开,然后相加,如果数字大于某个设定的数字,那么将前面相加的结果再次拆开一个一个相加,知道满足小于或者等于设定的数字,才停止这个过程。请问怎么编写循环来解决。我目前的方法:首先把这个任意数字看成字符串,然后取得位数,开始使用for循环进行累加,但是只能进行一次,不知道怎样加入到Do循环里面去执行重复的循环累加,直到累加结果符合条件。难题是并不知道这个数字的大小和长短(位数),请高手帮忙解决一下,谢谢
2008年09月24日 11点09分
1
level 5
Dim i, ii As Long Do While True For i = 1 To Len(Text1) ii = ii + Val(Mid(Text1, i, 1)) Next i If ii < Val(Text2) Then Exit Do If ii < 10 Then Exit Do Loop
2008年09月24日 16点09分
3
level 1
进入死循环,测试数据text1=12345,text2=10
2008年09月24日 23点09分
4
level 5
Dim i, ii As Long Do While True For i = 1 To Len(Text1) ii = ii + Val(Mid(Text1, i, 1)) Next i Debug.Print ii If ii <= Val(Text2) Then Exit Do If ii < 10 Then Exit Do Text1 = ii & "": ii = 0 Loop
2008年09月25日 07点09分
5