21xrx.com
2024-09-20 05:56:08 Friday
登录
文章检索 我的文章 写文章
Java水仙花数代码解释
2023-06-16 14:28:34 深夜i     --     --
水仙花数 Java程序 n次方

水仙花数,又称阿姆斯特朗数,是指一个 n 位正整数(n≥3),其各位数字的 n 次方和等于该数本身。例如:1^3 + 5^3 + 3^3 = 153。

下面是一个 Java 程序,用于判断一个数是否为水仙花数:


public class NarcissisticNumber {

  public static void main(String[] args) {

    int num = 153;

    int sum = 0;

    int temp = num;

    while (temp != 0) {

      int digit = temp % 10;

      sum += Math.pow(digit, 3);

      temp /= 10;

    }

    if (num == sum) {

      System.out.println(num + "是水仙花数");

    } else {

      System.out.println(num + "不是水仙花数");

    }

  }

}

该程序的执行流程如下:

1. 初始化一个数 num,假设为水仙花数;

2. 定义一个变量 sum,用于保存计算出来的各位数字的 n 次方和;

3. 定义一个变量 temp,表示对 num 进行逐位处理时的数值;

4. 通过循环逐位取出 temp 的每一位数字,计算它的 n 次方,然后累加到 sum 中;

5. 当 temp 取完了所有的位,如果 sum 等于 num,则说明 num 是水仙花数,否则不是。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复