21xrx.com
2024-12-22 21:46:44 Sunday
登录
文章检索 我的文章 写文章
C++求解水仙花数的程序编写
2023-07-06 00:18:58 深夜i     --     --
C++ 求解 水仙花数 程序编写

水仙花数,也称为“自恋数”或“阿姆斯特朗数”,指的是一个三位数,其各位数的立方和正好等于该数本身。例如,153是一个水仙花数,因为$153=1^3+5^3+3^3$。

C++是一种高级编程语言,也是一个广泛使用的编程语言。在本篇文章中,我们将介绍如何使用C++编写一个求解水仙花数的程序。

代码实现:

#include

using namespace std;

int main()

{

  int num, temp, sum = 0;

  cout<<"请输入一个三位数:"<

  cin>>num;

  temp = num;

  while(temp != 0)

  {

   sum += (temp % 10) * (temp % 10) * (temp % 10);

   temp = temp / 10;

  }

  if(sum == num)

   cout< <<"是水仙花数。"<

  else

   cout< <<"不是水仙花数。"<

  return 0;

}

代码解释:

该程序使用了while循环来计算一个三位数的各个数字的立方和。由于输入的数字是一个三位数,因此在输入数字之后,我们将其存储在变量num中,并将变量temp初始化为num。

在while循环中,我们使用了取模运算符和除法运算符来获取num中个位、十位和百位上的数字,并对这些数字进行立方运算。我们将每次计算的结果累加到变量sum中。

在while循环执行完成后,我们使用if语句来比较sum和num。如果这两个值相等,那么我们就可以判断num是一个水仙花数,否则,我们就可以判断num不是一个水仙花数。

使用该程序,我们可以很轻松地求解任何一个三位数是否为水仙花数。如果想要计算更多位数的水仙花数,我们只需要修改while循环中的代码即可。

总结:

本篇文章介绍了一个使用C++编写求解水仙花数的程序。在这个程序中,我们利用了while循环、取模运算符和除法运算符来计算一个三位数的各个数字的立方和,并通过if语句来判断一个数是否为水仙花数。这个程序可以很方便地扩展到更多位数的水仙花数的计算。

  
  

评论区

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