C++ Program to Check Number is Perfect Square, Armstrong or Prime using While Loop
Write C++ Program to Check Number is Perfect Square, Armstrong or Prime using While Loop
// CPP Program to Check Number is Perfect Square, Armstrong or Prime using While Loop
#include <iostream>
#include <math.h>
using namespace std;
int isPerfectSquare(int n)
{
if (pow((int)sqrt(n), 2) == n)
return 1;
return 0;
}
int isArmstrongNumber(int n)
{
int digits = ceil(log10(n));
int temp = 0, temp2 = n, rem;
while (n > 0)
{
rem = n % 10;
temp += pow(rem, digits);
n /= 10;
}
if (temp2 == temp)
return 1;
return 0;
}
int isPrime(int n)
{
int i;
for ( i = 2; i < n; i++)
{
if (n % i == 0)
{
return 0;
}
}
return 1;
}
int main(int argc, char *argv[])
{
int n, flag = 0;
cout << "Enter the number :--> ";
cin >> n;
if (isPerfectSquare(n))
{
flag = 1;
cout << "It is a Perfect Square\n";
}
if (isArmstrongNumber(n))
{
flag = 1;
cout << "it is an Armstrong number\n";
}
if (isPrime(n))
{
flag = 1;
cout << "it is a Prime number\n";
}
if(flag == 0)
{
cout << "It's not prime , Armstrong or Perfect Square";
}
return 0;
}
Output:
Run 1:
Enter the number: 36
It is a perfect square
Run 2:
Enter the number: 89
it is a prime number