水仙花数_水仙花数c语言程序

水仙花数
c语言,求水仙花数,哪里出错了?

  • 实在不知道哪里出错了#includestdio.h#includestdio.hint main(){int i,g,s,b,a; g个位 s十 b百for(i=100;i=10000;i++){if(i=100&&i1000){b=(int)(i100);s=(int)((i-b*100)10);g=i%10;if(i==g*g*g+s*s*s*+b*b*b){printf("%dn",i);}}}return 0;}
  • if(i==g*g*g+s*s*s*+b*b*b)这条语句多了一个*,应该是if(i==g*g*g+s*s*s+b*b*b)运行结果如下

大神求教,C++ 水仙花数

  • 题目:输出100~999中的所有水仙花数,若三位数ABC满足ABC=A^3+B^3+C^3,则称其为水仙花数。例如 153=1^3+5^3+3^3,所以153是水仙花数。图中的程序错在哪里了
  • 第三个判断,应该是if(n == i*i*i+j*j*j+k*k*k)

C语言高手来!!帮我查一个错!!就一个错!!Please…关于水仙花半数的题

  • import java.io.*;public class Narcissistic{ public static void main(String[] args) throws IOException { InputStreamReader reader=new InputStreamReader(System.in); BufferedReader input=new BufferedReader(reader); for (int i=101;i999;i++){ String s=new Integer(i).toString(); int temp=0; int n=s.length(); for (int j=0;jn;j++){ temp+=Math.pow(Character.digit(s.charAt(j), 10), n); if(temp==i){ System.out.println(i); }}}}}}
  • 这是C代码?

C语言求水仙花数要求范围自己输入

  • 没有给定范围,范围自行输入。
  • 你没有给 d 赋值,也就是说 if 语句总是假

C语言 输入两个数(默认100-999) 求两个数之间的水仙花数 水仙花数”是指一个三位数

  • ,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3。(这种算法输入 300 380 答案就错了(应该有370 371))# include stdio.h# include math.hint main (){int m,n,i,j,k,h=0;while (scanf ("%d %d",&m,&n)!=EOF){for (;m=n;m++){i=m100;j=i10-10*i;k=m%10;if (m==pow(i,3)+pow(j,3)+pow(k,3)){printf ("%d ",m);h++;}}if (h==0)printf ("non");}return 0;}
  • if (m==i*i*i+j*j*j+k*k*k)

我的这个求水仙花数的vb程序为何在text1中只显示一个数407

  • Private Sub C1_Click()Dim a As IntegerDim b, c, d As IntegerFor a = 100 To 999 b = Int(a 100) c = Int((a – b * 100) 10) d = a – b * 100 – c * 10 If a = b ^ 3 + c ^ 3 + d ^ 3 Then Text1.Text = a End IfNext aEnd Sub
  • 因为只显示了最后满足 If a = b ^ 3 + c ^ 3 + d ^ 3 Then Text1.Text = a这个条件时的那个数。如果你要显示全部,需要打开textbox mutiline模式,或者使用label来输出

C++ 广义水仙花数 请帮我看哪里出了错

  • #include iostream#include cmathusing namespace std;int main(){ int i; int digit; double sum=0; double n; cinn; for(i=pow(10,n);ipow(10,n+1);i++) { while(i!=0) { digit=i%10; i=i10; sum=sum+pow(digit,n); } if(sum==i) couti" "endl; } return 0;}没有提示出错,我在cb上写的,在网站上提交的时候又说是编译出错,谢大神赐教了!!
  • i是int类型,sum是double类型,要比较大小得先将double转变为int

c语言 水仙花数 多实例测试

  • 春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+33。 现在要求输出所有在m和n范围内的水仙花数。问题补充: 输入输入数据有多组,每组占一行,包括两个整数m和n(100=m=n=999)。输出对于每个测试实例,要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于m,并且小于等于n,如果有多个,则要求从小到大排列在一行内输出,之间用一个空格隔开; 如果给定的范围内不存在水仙花数,则输出no; 每个测试实例的输出占一行。 样例输入100 120300 380样例输出no370 371
  • 这个不是HDU的题目么。。。你首先把所有的水仙花数弄出来按大小存到数组里面,然后读取输入数据。如果在这个范围内有,就输出。没有就输出no

为什么运行出来的程序什么数都显示是水仙花数?

  • #includestdio.hvoid main(){int S,a,b,c;scanf("%d",&S);a=S100;b=S%10010;c=S%10;if(S==a*a*a+b*b*b+c*c*c);printf("%d是水仙花数.n",S);}
  • 你的if语句后面干嘛加分号呀,去掉!【if(S==a*a*a+b*b*b+c*c*c) printf("%d是水仙花数.n",S);】这是一句C语句呀,你加分号就成2句啦。

C语言编程:寻找水仙花数

  • 这个程序错在哪?#includestdio.hint main(){ int n,a,b,c; for(n=100;n=999;n++) { scanf("%d",&n); a=n%10; b=(n10)%10; c=n100; if(n==a*a*a+b*b*b+c*c*c) {printf("%dn",n);} } return 0;}
  • 去掉 scanf("%d",&n); 这句就好了。

水仙花数相关资讯

版权声明