C++ 中的霓虹数


霓虹数是指其平方数的各个数字之和等于该数本身的数。例如:

n = 9

平方数 = 81

平方数各数字之和 = 8 + 1 = 9

因此,9 是霓虹数。

我们需要检查给定的数字是否为霓虹数。如果是,则输出“是”,否则输出“否”。

算法

  • 初始化数字 n。
  • 求出该数字的平方数。
  • 求出平方数各数字之和。
  • 如果平方数各数字之和等于给定的数字,则结果为真,否则为假。

实现

以下是上述算法在 C++ 中的实现:

#include <bits/stdc++.h>
using namespace std;
int isNeonNumber(int x) {
   int square = x * x;
   int digitsSum = 0;
   while (square != 0) {
      digitsSum += (square % 10);
      square = square / 10;
   }
   return digitsSum == x;
}
int main(void) {
   string result;
   result = isNeonNumber(1) ? "Yes" : "No";
   cout << 1 << "->" << result << endl;
   result = isNeonNumber(3) ? "Yes" : "No";
      cout << 3 << "->" << result << endl;
   result = isNeonNumber(9) ? "Yes" : "No";
      cout << 9 << "->" << result << endl;
}

输出

如果你运行以上代码,你会得到以下结果:

1->Yes
3->No
9->Yes

更新时间:2021 年 10 月 23 日

2K+ 次浏览

开启你的职业生涯

通过完成课程来获得认证

开始
广告