“水仙花数”(Narcissistic number)是指一个 n 位数,其各位数字的 n 次方之和等于它本身。
例如:
- 153 是 3 位数的水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。
✅ VB(Visual Basic)编程实现水仙花数
以下是一个简单的 VB 程序,用来找出所有 n 位数的水仙花数:
Module Module1
Sub Main()
Dim n As Integer
Dim num As Long
Dim digit As Integer
Dim sum As Long
Dim i As Integer
' 输入位数
Console.Write("请输入水仙花数的位数(例如 3):")
n = Convert.ToInt32(Console.ReadLine())
Console.WriteLine("水仙花数有:")
For i = 1 To 999999999 ' 限制为 9 位数
num = i
sum = 0
Do
digit = num Mod 10
sum = sum + digit ^ n
num = num \ 10
Loop While num > 0
If sum = i Then
Console.WriteLine(i)
End If
Next i
Console.ReadLine()
End Sub
End Module