① 分别使用while、do-while和for语句编程,找出所有的水仙花数并输出。
C语言程序:
#include"stdio.h"
/*使用while循环找出所有的水仙花数*/
voidflower1()
{
intn;
inta,b,c;
n=100;
while(n<1000)
{
a=n/100;
b=n/10%10;
c=n%10;
if(a*a*a+b*b*b+c*c*c==n)
printf("%d ",n);
n++;
}
}
/*使用do-while循环找出所有的水仙花数*/
voidflower2()
{
intn;
inta,b,c;
n=100;
do
{
a=n/100;
b=n/10%10;
c=n%10;
if(a*a*a+b*b*b+c*c*c==n)
printf("%d ",n);
n++;
}while(n<1000);
}
/*使用for循环找出所有的水仙花数*/
voidflower3()
{
intn;
inta,b,c;
for(n=100;n<1000;n++)
{
a=n/100;
b=n/10%10;
c=n%10;
if(a*a*a+b*b*b+c*c*c==n)
printf("%d ",n);
}
}
voidmain()
{
printf("使用while循环找出的水仙花数 ");
flower1();
printf("使用do-while循环找出的水仙花数 ");
flower2();
printf("使用for循环找出的水仙花数 ");
flower3();
}
运行结果:
使用while循环找出的水仙花数
153
370
371
407
使用do-while循环找出的水仙花数
153
370
371
407
使用for循环找出的水仙花数
153
370
371
407
② python使用三重循环输出水仙花数,每行输出一个水仙花数,一定要使用三重循环!求助!
这个完全是可以的,你只需要正常的一个数多,其实都是完全没有问题的呀。
③ python使用函数实现水仙花数
求1000以内的水仙花数(3位数)
foriinrange(100,1000):
a=i//100
b=(i-a*100)//10
c=(i-a*100-b*10)
ifi==pow(a,3)+pow(b,3)+pow(c,3):
print(i)
希望可以帮到你
④ Python求水仙花数。(要求用while)。我这个运行出来只有一个407,看不出来哪里不对。
for i in range(100, 1000):
if (i//100)**3 + (i//10%10)**3 + (i%10)**3 == i:
print(i)
⑤ python编程求指定区间内的水仙花数
要编程求指定区间内的水仙花数,可以在循环中实现,每一次循环,取得每一个数的百位数,十位数,和个位数,再分别求它们的立方和,如果所得的结果等于原来的数,那么就是找到了一个水仙花数,就把他输出。
⑥ 我想用python编个小程序,循环计算用户给处的任意两个整数之间的水仙花数。
#coding=utf8
while 1:
try:
xa=int(raw_input("输入整数 xa= "))
xb=int(raw_input("输入整数 xb= "))
except:
print("请输入整数")
continue
if xa>xb:xa,xb=xb,xa
for n in xrange(xa,xb):
i=n/100
j=n/10%10
k=n%10
if i*100+j*10+k==i+j**2+k**3:
print("%-5d")%n
⑦ while 循环求所有水仙花数
while(x<1000)
{
a=x%10;
b=(x%100-a)/10;
c=(x-x%100)/100;
if(a*a*a+b*b*b+c*c*==x)
System.out.println(x); x++;
}
⑧ 关于“水仙花数”python代码(初学者)
因为1//10是false,不会