go实现输出介于a,b(含a,b,且a<=b)的所有“水仙花数”。所谓“水仙花数”是指一个数,其各位数字立方和等于该数本身。例如,153是一个“水仙花数”,因为153=13+53+33。
时间: 2024-02-06 13:11:51 浏览: 49
满足各个数字的立方和等于此数的水仙花数
好的,使用Go语言可以这样实现:
```go
package main
import "fmt"
func main() {
var a, b int
fmt.Print("请输入a和b(以空格隔开):")
fmt.Scanln(&a, &b)
for i := a; i <= b; i++ {
sum := 0
temp := i
for temp != 0 {
digit := temp % 10
sum += digit * digit * digit
temp /= 10
}
if sum == i {
fmt.Println(i)
}
}
}
```
这段代码中,我们先通过`fmt.Scanln()`函数从用户输入中获取a和b的值,然后使用一个for循环遍历a到b之间的所有整数。对于每个整数,我们使用一个while循环计算它的各位数字的立方和。如果该和等于该整数本身,则该整数为水仙花数,将其输出即可。
阅读全文