vb6.0编程问题:水仙花abc=a^3+b^3+c^3(0到999),求所有水仙花数?
2个回答
2014-11-05 · 知道合伙人软件行家
关注
展开全部
真是的,那么挑剔。。java给你写了!!而且水仙花数是3位数的。。。
public class Test {
public static void main(String[] args) {
int num;
Scanner input = new Scanner(System.in);
num = input.nextInt();
for(int i=100; i<num; i++) {
String str = String.valueOf(i);
int a = str.charAt(0);
int b = str.charAt(1);
int c = str.charAt(2);
if(a*a*a+b*b*b+c*c*c==i) {
System.out.println(i);
}
}
}
}
追问
感谢……刚接触、才学到vb、c语言还没学……之后才会学java……这个是老师留的作业……
展开全部
所谓的水仙花数‘是指在三位整数(100到999之间)中,百位数、十位数、个位数的立方和等于它本身,如153=1^3+5^3+3^3。
程序代码如下:
Private Sub Command1_Click()
Dim i As Integer, s As Integer
Dim a As Integer, b As Integer, c As Integer
Print "100到999所有水仙花数:";
For i = 100 To 999
a = i \ 100 '取百位数
b = i \10 Mod 10 '或 b = i Mod 100 \10 取十位数
c = i Mod 10 ‘取个位数
s = a ^ 3 + b ^ 3 + c ^ 3 '水仙花数的判断依据
If s = i Then
Print i;
End If
Next i
End Sub
运行结果:
100到999所有水仙花数: 153 370 371 407
程序代码如下:
Private Sub Command1_Click()
Dim i As Integer, s As Integer
Dim a As Integer, b As Integer, c As Integer
Print "100到999所有水仙花数:";
For i = 100 To 999
a = i \ 100 '取百位数
b = i \10 Mod 10 '或 b = i Mod 100 \10 取十位数
c = i Mod 10 ‘取个位数
s = a ^ 3 + b ^ 3 + c ^ 3 '水仙花数的判断依据
If s = i Then
Print i;
End If
Next i
End Sub
运行结果:
100到999所有水仙花数: 153 370 371 407
追问
谢谢啦啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询