水仙花数

Posted 橙煦猿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了水仙花数相关的知识,希望对你有一定的参考价值。

引子:

    英语(narcissism)译成汉语是水仙花,来自于希腊神话,美少年纳西斯在水中看到自己的倒影,便爱上了自己,憔悴而死变成了一朵花,后人称为水仙。

    我们算法中的水仙花数也叫自幂数,名字就是由此而来。

    一个三位数,如果进行数位分离,将的百位自承三次,十位自乘三次,个位自乘三次,然后相加,如果等于它本身,那这个三位数就叫做水仙花数。

    例:153的百位是1,十位为5,个位则是3,1*1*1+5*5*5+3*3*3=153,所以153是一个水仙花数,这样的数三位数里一共有四个。

 

题目:

    输入一个三位数,判断它是不是水仙花数。

 

代码:

 1 program shen5;
 2 
 3 VAR
 4   X,A,B,C:INTEGER;
 5 
 6 BEGIN
 7 
 8   READLN(X);
 9   A := X DIV 100;
10   B := X MOD 100 DIV 10;
11   C := X MOD 10;
12   IF (X = A*A*A+B*B*B+C*C*C) THEN
13     WRITELN(YES)
14   ELSE
15     WRITELN(NO)
16 END.

 

加强训练:使用循环判断并输出所有三位数中的水仙花数!

 1 program shen6;
 2 
 3 VAR
 4   X,A,B,C:INTEGER;
 5 
 6 BEGIN
 7   for x := 100 to 999 do
 8   begin
 9     A := X DIV 100;
10     B := X MOD 100 DIV 10;
11     C := X MOD 10;
12     IF (X = A*A*A+B*B*B+C*C*C) THEN
13       WRITELN(x, YES )
14   end;
15 END.

 

以上是关于水仙花数的主要内容,如果未能解决你的问题,请参考以下文章

代码实现:在控制台输出所有的”水仙花数”

java 实现(代码) -- 水仙花数 + 杨辉三角形

java 输出水仙花数的代码

求水仙花数c语言

Java实现输出水仙花数

华为OD机试真题Java实现水仙花数真题+解题思路+代码(2022&2023)