C++程序 在给定范围内检查和打印Neon数

C++程序 在给定范围内检查和打印Neon数

Neon数是一个数字,其中数字的平方的各位数字之和等于数字本身。任务是检查并打印范围内的Neon数。

示例:

输入: 9
输出: Neon Number
解释: 平方为9 * 9 = 81,平方的各位数字之和为9。

输入: 12
输出: 不是Neon数
解释: 平方为12 * 12 = 144,平方的各位数字之和为9(1 + 4 + 4),不等于12。

实现很简单,我们首先计算给定数字的平方,然后找到平方中数字的和。

// C++ program to check and print
// Neon Numbers upto 10000
#include <iostream>
using namespace std;
#include <math.h>
 
int checkNeon(int x)
{
    // Storing the square of x
    int sq = x * x;
 
    // Calculating the sum of
    // digits of sq
    int sum_digits = 0;
    while (sq != 0)
    {
        sum_digits = sum_digits + sq % 10;
        sq = sq / 10;
    }
    return (sum_digits == x);
}
 
// Driver Code
int main(void)
{
    // Printing Neon Numbers upto 10000
    for (int i = 1; i <= 10000; i++)
        if (checkNeon(i))
            cout << i << " ";   
}  

输出:

1 9

时间复杂度: O(n * log 10 (n * n)),其中n是要打印Neon数的数字。

空间复杂度: O(1),因为没有使用额外的空间。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 示例