帮忙写下 VB 程序

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:54:50
100-999间有一种 水仙花数(数字的立方之和等于读数本身,比如153=1^3+5^3+3^3)
用a表示百位 , b表示十位 , c表示个位
共有几个 写一下VB编码 谢谢
最好能用do while 语句

我试下,自己提高:
Private Sub Command1_Click()
Dim a, b, c, d, e As Integer
For a = 1 To 9
For b = 0 To 9
For c = 0 To 9
d = a * 100 + b * 10 + c
If a ^ 3 + b ^ 3 + c ^ 3 = d Then
Text1.Text = Text1.Text & d & vbNewLine
e = e + 1
End If
Next
Next
Next
Text1.Text = Text1.Text & "水仙花数有" & e & "个。"
End Sub

答案补充:按照你的要求,改为DoWhile语句。
建Command1.代码如下。
===================
Private Sub Command1_Click()
Dim i As Integer
i = 100
Do While i < 1000
If Val(Left(i, 1)) ^ 3 + Val(Mid(i, 2, 1)) ^ 3 + Val(Right(i, 1)) ^ 3 = i Then Print i
i = i + 1
Loop
End Sub

Dim N, I As Integer
N = 0
For I = 100 To 999
If I = Left(I, 1) ^ 3 + Mid(I, 2, 1) ^ 3 + Right(I, 1) ^ 3 Then
MsgBox I
N = N + 1
End If
Next
MsgBox "100-999间共有" & N &