php输出100到999的水仙花数,1000以内的水仙花数代码?

用户投稿 105 0

关于“php编程输出水仙花数”的问题,小编就整理了【1】个相关介绍“php编程输出水仙花数”的解答:

1000以内的水仙花数代码?

用C语言求1000以内的水仙花数可以用for循环。

可以参考下面的代码:

#include<stdio.h>

main()

{

int i=0,g,s,b,a=0;

for(i=0;i<1000;i++)

{

if(i>=100&&i<=999)

{

b=i/100;

s=(i-b*100)/10;//除10

g=i-b*100-s*10;

a=b*b*b+s*s*s+g*g*g;

}

if(a==i)printf("%d\n",a);

}

}

扩展资料:

for循环语法

1、语句最简形式为:

for( ; ; )

2、一般形式为:

for(单次表达式;条件表达式;末尾循环体)

{

中间循环体;

}

其中,表示式皆可以省略,但分号不可省略,因为“;”可以代表一个空语句,省略了之后语句减少,即为语句格式发生变化,则编译器不能识别而无法进行编译。

水仙花数,指的是一个三位数(100-999),其个位、十位、百位数的立方和等于该数本身。例如:153 = 1³ + 5³ + 3³。

下面是求1000以内的水仙花数的Python代码:

```

for i in range(100, 1000):

sum = 0

temp = i

while temp > 0:

digit = temp % 10

sum += digit ** 3

temp //= 10

if i == sum:

print(i)

```

首先,从100到999遍历三位数。然后,用temp保存当前遍历的数i,以便计算其个位、十位、百位的立方和。接着,用while循环,取temp的个位数,计算其立方和,并将temp除以10去掉个位数。循环直到temp小于等于0,完成对i每个位数立方和的计算。最后,与i比较,若相等,则输出i,即这个三位数是一个水仙花数。

这个代码中,最关键的就是while循环,此循环从temp中取出了三位数每一位数的值,实现了算法的核心计算。

到此,以上就是小编对于“php编程输出水仙花数”的问题就介绍到这了,希望介绍关于“php编程输出水仙花数”的【1】点解答对大家有用。

抱歉,评论功能暂时关闭!