21xrx.com
2025-04-01 11:52:24 Tuesday
文章检索 我的文章 写文章
C++程序:输出水仙花数
2023-06-28 17:51:38 深夜i     26     0
C++ 水仙花数 输出

水仙花数是指一个三位数,其各个数字的立方和等于该数本身。例如,153是一个水仙花数,因为1³ + 5³ + 3³ = 153。现在我们来介绍使用C++编写输出水仙花数的程序。

首先,我们需要使用for循环来遍历所有的三位数。代码如下:

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

接着,我们需要将该数拆分为三个数字。可以使用模运算和整除运算来实现:

int a = i / 100;  // 获取百位数字
int b = (i / 10) % 10// 获取十位数字
int c = i % 10;   // 获取个位数字

然后,我们需要计算这三个数字的立方和。代码如下:

int sum = a * a * a + b * b * b + c * c * c;

最后,我们只需要判断此时的sum是否等于i本身即可:

if(sum == i)
  cout << i << endl;

将这些代码整合在一起,完整的程序如下:

#include <iostream>
using namespace std;
int main() {
  for(int i = 100; i <= 999; i++) {
    int a = i / 100;
    int b = (i / 10) % 10;
    int c = i % 10;
    int sum = a * a * a + b * b * b + c * c * c;
    if(sum == i)
      cout << i << endl;
    
  }
  return 0;
}

当我们运行该程序时,会输出所有的水仙花数:

153
370
371
407

这个程序非常简单,但是通过它我们可以学习到很多C++中的基本语法和结构,并且也可以深入了解到水仙花数的定义及其计算方法。

  
  

评论区