>凡事网 导航

“水仙花数”是指一个3位数,其各位数的立方和等于该数,编写程序,打印出100~1000之间的所有水仙花数 “水仙花数”是指一个3位数,其各位数的立方和等于该数,编写程...

2024-07-01m.fan-pin.com
编写代码,输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身~

main()
{
int n,a,b,c;
for(n=100;n<=999;n++)
{
a=n/100;
b=n%100/10;
c=n%10;
if(a*a*a+b*b*b+c*c*c==n) printf("%d
",n);
}
}
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。
三位的水仙花数共有4个:153,370,371,407;
加一下就可以了,
153+370+371+407=1301
你可以用程序来找到他们,比如用我会的pascal语言就是:
program shuixianhuashu;
var
a,b,c:integer;
begin
for a:=1 to 9 do
for b:=0 to 9 do
for c:=0 to 9 do
if a*a*a+b*b*b+c*c*c=100*a+10*b+c then writeln(100*a+10*b+c);
end.
或:
program sxh;
var a,b,c,d:integer;
begin
for a:=100 to 999 do begin
b:=a mod 10;
c:=a mod 100 div 10;
d:=a div 100;
if b*b*b+c*c*c+d*d*d=a then writeln(a);
end;
end.
也可用C语言:
#include
int main(void)
{
int a,b,c;
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
printf("%d%d%d
",a,b,c);
return 0;
}

扩展资料:
水仙花数又称阿姆斯特朗数。
三位的水仙花数共有4个:153,370,371,407;
四位的四叶玫瑰数共有3个:1634,8208,9474;
五位的五角星数共有3个:54748,92727,93084;
六位的六合数只有1个:548834;
七位的北斗七星数共有4个:1741725,4210818,9800817,9926315;
八位的八仙数共有3个:24678050,24678051,88593477
参考资料来源:百度百科-水仙花数

也可以直接用a、b、c三个循环搞定
'这个是VB
Private
Sub
Form_Click()
For
a
=
1
To
9
For
b
=
0
To
9
For
c
=
0
To
9
If
a
^
3
+
b
^
3
+
c
^
3
=
100
*
a
+
10
*
b
+
c
Then
Print
(100
*
a
+
10
*
b
+
c)
Next
c
Next
b
Next
a
End
Sub
显示:
153
370
371
407
//这个是c++
#include
using
namespace
std;
int
main()
{
for(int
a=1;a<=9;a++)
for(int
b=0;b<=9;b++)
for(int
c=0;c<=9;c++)
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
cout<<100*a+10*b+c<<"
";
return
0;
}
运行显示:153
370
371
407

也可以直接用a、b、c三个循环搞定

'这个是VB
Private Sub Form_Click()
For a = 1 To 9
For b = 0 To 9
For c = 0 To 9
If a ^ 3 + b ^ 3 + c ^ 3 = 100 * a + 10 * b + c Then Print (100 * a + 10 * b + c)
Next c
Next b
Next a
End Sub

显示:
153
370
371
407

//这个是c++
#include<iostream>
using namespace std;
int main()
{
for(int a=1;a<=9;a++)
for(int b=0;b<=9;b++)
for(int c=0;c<=9;c++)
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c) cout<<100*a+10*b+c<<" ";
return 0;
}

运行显示:153 370 371 407

#include<iostream>
using namespace std;
int main()
{
int a,b,c;
for(int i=100;i<1000;i++)
{
//a、b、c分别为i百位、十位、个位上的数字
c=i%10;
b=(i/10)%10;
a=i/100;
//因为C++的规定两个正的整型数相除,结果舍去小数部分,所以在取i的个十百位数字时,我用的是上面的算法
//如果要求严格一些,也可以这样写
//c=i%10;
//b=((i-c)/10)%10;
//a=(i-i%100)/100;
if(i==a*a*a+b*b*b+c*c*c) cout<<i<<" ";
}
return 0;
}

运行输出:153 370 371 407

' Narcissus

Private Sub Command1_Click()
For n = 100 To 999
a = n \ 100
b = (n - a * 100) \ 10
c = n Mod 10

If n = (a ^ 3 + b ^ 3 + c ^ 3) Then Print n
Next
End Sub

要什么语言的??
java的?
int a,b,c;
for (int i =100;i<=1000;i++)
{
a= i / 100; 取百位。
b= i % 100; 取个位数。
c= i/10 % 10; 取十位数。
if (a*a*a+b*b*b+c*c*c == i)
{
system.out.println("水仙花数" + i);
}
}
好就不用java编程序了,立方不知道怎么写的,不好意思阿。
其他语言和这个差不多。

...所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身._百 ...
main(){ int n,a,b,c;for(n=100;n<=999;n++){ a=n\/100;b=n%100\/10;c=n%10;if(a*a*a+b*b*b+c*c*c==n) printf("%d\\n",n);} } 水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。三位的水仙花数共有4个:153,370,371,407...

...所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身...
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)你没有判别n的取值,要确保是一个三位数不然一定会出问题的,不如你输入一个两位数,n能对100就不会得到正确的结果。下面程序是一个简单例子:输出所有的水仙花数 inc...

c语言编程题 找出所有的水仙花数,水仙花数是指一个3位数
\/\/分割出十位 int b=i\/10%10;\/\/分割出百位 int c=i\/100;\/\/判断该数是否等于【个位的三次方+十位的三次方+百位的三次方】if(i==(Math.pow(a,3)+Math.pow(b,3)+Math.pow(c,3))){ System.out.println(i+"是水仙花数");} } } Test public void test(){ isNarcissusNumber();}...

求水仙花数。所谓水仙花数,是指一个三位数abc,如果满足a^3+b^3+c...
int resultAll=1;for (int j=0;j<numbers;j++)resultAll*=10;for(int i=resultAll\/10;i<resultAll;i++){ if(i==count(i,numbers))printf("水仙数:%d\\n",i);} } int main(int argc, char* argv[]) \/\/main 函数 { while (1){ int x=0;printf("\\n请输入要计算的水仙花位数...

...打印出所有的水仙花数。所谓水仙花数是指一个三位数,其各位...
include <stdio.h> int main(){ \/\/所谓水仙花数是指一个三位数,其各位数字立方和等于该数 int i;int a=0,b=0,c=0; \/\/a表示百位上的数,b表示十位上的数,c表示个位上的数,printf("打印三位数的所有水仙花数\\n");for (i=100;i<1000;i++){ a=i\/100;b=i\/10%10;c=i%10;if...

...水仙花数”是指一个三位数,其各位数字的立方和等于该数本身_百度...
Console.WriteLine("三重循环判断:");Console.WriteLine("水仙花数有:");int q, w, e, r;for(q=1;q<=9;q++)for(w=0;w<=9;w++)for (e = 0; e <= 9; e++){ int s = q * 100 + w * 10 + e;int t = q * q * q + w * w * w + e * e * e;if (s ...

水仙花数是什么数字?
所谓的“水仙花数”是指一个三位数其各位数字的立方和等于该数本身,例如153是“水仙花数”,因为:153 = 1^3 + 5^3+ 3^3 。下面是完整的C语言编程代码:运行结果:result is:153 370 371 407

...输出所有水仙花数.所谓水仙花数是指一个3位数.其各位数字立方和等于...
include<stdio.h> \/\/一个三位数,其各位数字的立方和等于该数本身。例如:153=1^3+5^3+3^3 void main(){ int n,a,b,c;for(n=100;n<1000;n++){ a=n\/100;b=(n%100)\/10;c=(n%100)%10;if(a*a*a+b*b*b+c*c*c==n)printf("\\t");} printf("\\n");} ...

输出所有的水仙花数.所谓的水仙花数是指一个3位数,其各位数字立方和等于...
include "stdio.h"include "conio.h"main(){ int i,j,k,n;printf("'water flower'number is:");for(n=100;n<1000;n++){ i=n\/100;\/*分解出百位*\/ j=n\/10%10;\/*分解出十位*\/ k=n%10;\/*分解出个位*\/ if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)printf("%-5d",n);...

...所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身...
水仙花数:include<stdio.h> void main(){ int a,b,c,i;for(i=100;i<=999;i++){ a=i\/100,b=i%100\/10,c=i%100%10;\/*求出水仙花数每位的数值*\/ if((a*a*a+b*b*b+c*c*c)==i)printf("%d,%d,%d\\n",a,b,c);} getch();} ...

相关链接2

返回顶部
凡事房车自主流
凡事网