/* 程序问题注释开始
程序的版权和版本声明部分
Copyright © 2024,DNUI-stu
All rights reserved.
文件名称: 练习题
作 者: 山北为谷
完成日期: 2024 年 08月 16日
版 本 号: 001
对任务及求解方法的描述部分
问题描述:
为了支援边远贫困地区教育教学,学校准备为边远地区的小学生开发一套数学训练系统, 请编写程序,输入一个三位的正整数,
判断它是否为"水仙花"数,若是,输出"Yes",若不是,输出"No"。 "水仙花"数是指该数的各位上数值的三次幂之和等于该数。
输入不是三位数,直接返回false 取出个位数字 计算各位数字的三次幂并累加
去掉个位数字,准备取下一个数字
输入
371
输出
Yes
样例输入 复制
122
样例输出 复制
No
程序问题注释结束
*/
import java.util.Scanner;
public class J0301 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
scanner.close();
if (A(number)) {
System.out.println("Yes");
} else {
System.out.println("No");
}
}
private static boolean A(int number) {
if (number < 100 || number > 999) {
return false;
}
int sum = 0;
int temp = number;
while (temp > 0) {
int digit = temp % 10;
sum += (int) Math.pow(digit, 3);
temp /= 10;
}
return sum == number;
}
}
————————————————