以下是一个简单的Java代码来计算水仙花数:
public class NarcissisticNumber { public static void main(String[] args) { int num, originalNum, remainder, result = 0, n = 0; Scanner scanner = new Scanner(System.in); System.out.print("请输入一个正整数:"); num = scanner.nextInt(); originalNum = num; // 计算 num 是几位数 for (; originalNum != 0; originalNum /= 10, ++n); originalNum = num; // 计算每个数字的立方和 while (originalNum != 0) { remainder = originalNum % 10; result += Math.pow(remainder, n); originalNum /= 10; } if (result == num) System.out.println(num + " 是水仙花数。"); else System.out.println(num + " 不是水仙花数。"); } }
在这个例子中,我们使用一个Scanner对象从用户输入中读取一个整数。然后,我们计算这个数是几位数,并使用while循环计算这个数每个数字的立方和。如果立方和等于原始数字,则它是一个水仙花数。否则,它不是水仙花数。
评论