21xrx.com
2024-11-22 03:41:00 Friday
登录
文章检索 我的文章 写文章
C++编程实现水仙花数
2023-07-13 19:15:09 深夜i     --     --
C++ 编程 水仙花数

水仙花数是指一个三位数,它的每个位上的数字的立方和等于它本身,比如153就是一个水仙花数。今天我们来看看如何使用C++语言编写程序来实现水仙花数的求解。

首先,我们需要明确水仙花数的定义,即一个三位数的各位数字的立方和等于它本身。接下来,我们可以使用C++中的for循环来遍历所有的三位数,然后对每个三位数进行判断是否满足水仙花数的条件。

具体实现思路如下:

1. 使用一个循环遍历所有的三位数,即从100到999,每次加1。

2. 对于每个三位数,我们需要提取它的每个位上的数字。使用除以10和取余数的方法可以完成。以153为例,它的个位数字为3,十位数字为5,百位数字为1。

3. 对于提取出来的每个数字,进行立方运算,并将结果累加起来。

4. 判断累加的结果是否等于当前的三位数,如果是,则输出这个数。

下面是C++代码实现:


#include <iostream>

using namespace std;

int main() {

  for (int i = 100; i <= 999; i++) {

    int num = i;

    int sum = 0;

    while (num != 0) {

      int digit = num % 10;

      sum += digit * digit * digit;

      num /= 10;

    }

    if (sum == i)

      cout << i << "是水仙花数" << endl;

    

  }

  return 0;

}

运行程序后,会输出所有的水仙花数:153、370、371、407。

这里使用了while循环来提取三位数的每个位上的数字,并计算立方和。在循环结束后,如果得到的结果等于原数,则输出它是水仙花数。

总之,使用C++编程实现水仙花数并不难,只需要按照上述思路编写代码即可。此外,这也是一个很好的练习程序,对于初学者来说,可以加深对于循环、变量、运算符等基本概念的理解。

  
  

评论区

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