21xrx.com
2024-11-05 19:02:56 Tuesday
登录
文章检索 我的文章 写文章
C++如何输出水仙花数
2023-07-09 22:47:21 深夜i     --     --
C++ 水仙花数 输出

水仙花数是指一个三位数等于其各位数字立方和的数字。比如153就是一个水仙花数,因为153 = 1³ + 5³ + 3³。在编程中,我们需要输出1~999中的所有水仙花数,可以使用C++语言实现,具体代码如下:


#include <iostream>

#include <cmath>

using namespace std;

int main() {

  int n, i, m;

  for (n = 100; n < 1000; n++) {

    i = n;

    m = 0;

    while (i > 0) {

      int a = i % 10;

      m += pow(a, 3);

      i /= 10;

    }

    if (m == n)

      cout << n << endl;

  }

  return 0;

}

解释一下这个代码:

1. 定义变量n、i、m,n是循环变量,i是一个中间变量,m用来存储数字i的各个位数的立方和。

2. 使用for循环从100到999遍历所有三位数。

3. 在循环中,把当前数字n赋值给变量i,把变量m初始化为0。

4. 然后使用while循环,不断把i的个位数取出来求立方和。

5. 把求得的立方和存储在变量m中。

6. 如果最终m等于n,说明当前数字是一个水仙花数,输出即可。

这样就可以愉快地输出1~999中的所有水仙花数了!

  
  

评论区

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