Open In App

C++ Program To Check And Print Neon Number in a Given Range

Improve
Improve
Like Article
Like
Save
Share
Report

A neon number is a number where the sum of digits of the square of the number is equal to the number. The task is to check and print neon numbers in a range.

Examples: 

Input: 9
Output: Neon Number
Explanation: square is 9*9 = 81 and 
sum of the digits of the square is 9.

Input: 12
Output: Not a Neon Number
Explanation: square is 12*12 = 144 and 
sum of the digits of the square is 9 (1 
+ 4 + 4) which is not equal to 12.

The implementation is simple, we first compute square of given number, the find sum of digits in the square.

C++




// 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 << " ";   
}


Output:  

1 9

Time Complexity: O(n*log10(n*n)) where n is the number till which neon numbers to be printed.

Space Complexity: O(1) as no extra space has been used.


Last Updated : 22 Feb, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads