21xrx.com
2024-12-28 08:09:16 Saturday
登录
文章检索 我的文章 写文章
C++实现水仙花数
2023-07-04 23:24:03 深夜i     --     --
C++ 实现 水仙花数

水仙花数是指一个三位数各个位上数字的立方和等于该数本身的数。例如153,$1^3+5^3+3^3=1+125+27=153$。计算机语言中,常用C++实现水仙花数的判断。

在C++中,可以用for循环分别取出三位数的百位、十位、个位上的数字,将其立方后相加,判断是否等于该数本身。如果是,就输出这个水仙花数。

具体实现代码如下:


#include <iostream>

using namespace std;

int main() {

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

    int i = num / 100;    //取出百位数字

    int j = num % 100 / 10;  //取出十位数字

    int k = num % 10;     //取出个位数字

    if(num == i*i*i + j*j*j + k*k*k)

      cout<<num<<endl;   //输出水仙花数

    

  }

  return 0;

}

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

可以看到,用C++实现水仙花数的判断非常简单,只需要用for循环遍历100~999的所有数,取出百位、十位、个位上的数字并立方相加,判断即可。这个算法的时间复杂度是O(N),运行速度非常快。

总的来说,C++是一种常用的计算机语言,实现水仙花数的判断也非常容易。除了水仙花数,C++还可以实现很多数学问题的求解,应用非常广泛。因此,学会使用C++语言对计算机算法进行编程,可以帮助我们更好地理解数学问题、提高计算机编程能力。

  
  

评论区

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