21xrx.com
2025-03-27 07:41:39 Thursday
文章检索 我的文章 写文章
C++代码介绍:水仙花数(3到7阶)
2023-07-06 14:46:56 深夜i     16     0
C++ 代码 水仙花数 3-7阶

水仙花数是指一个n位数字,它的每个数字的n次方之和再加起来之后等于它本身。例如, 153 = 1^3 + 5^3 + 3^3。

在C++中,我们可以通过一些简单的语句来找到水仙花数。我们可以使用循环语句来遍历每个数并计算其每个数字的n次方之和。下面是一个示例代码:

c++
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
  int n;
  cout << "请输入要找的水仙花数的位数:";
  cin >> n;
  for (int i = pow(10, n - 1); i < pow(10, n); i++)
  {
    int sum = 0;
    int temp = i;
    while (temp > 0)
    {
      int digit = temp % 10;
      sum += pow(digit, n);
      temp /= 10;
    }
    if (sum == i)
    
      cout << i << " ";
    
  }
  return 0;
}

在上面的示例代码中,我们首先要求用户输入要找的水仙花数的位数。然后,我们使用for循环遍历每个数字。我们使用pow()函数来生成最大和最小数字。然后,我们使用while循环来计算每个数字的n次方之和。最后,如果和等于原数,我们就打印出水仙花数。

此代码非常简单,适合初学者学习。如果想要找到更高位数的水仙花数或者使用不同的方法进行计算,可以深入学习数学。

  
  

评论区

请求出错了