Check strong number using recursion

Problem statement:- Program to check strong numbers or not using recursion.

Data requirement:-

   Input Data:- num

  Output Data:-
String Output

Program in C

Here is the source code of the C Program to check a strong number or not using recursion.

Code:

#include<stdio.h>
#include<math.h>
int Factorial(int num)
{
   if(num<=0)
    return 1;
   else
   return num*Factorial(num-1);
}
int check_StrongNumber(int num)
{
    int fact;
    static int sum=0;
     if(num>0)
     {
         fact=1;
         int rem=num%10;
         check_StrongNumber(num/10);
         fact=Factorial(rem);
         sum+=fact;
     }
     return sum;
     }
int main()
{
    int num;
    printf("Enter a number:");
    scanf("%d",&num);
   if(check_StrongNumber(num)==num)
    printf("It is a Strong Number.");
   else
    printf("It is not a strong Number.");
}

Input/Output:
Enter a number:145
It is a Strong Number.

Program in C++

Here is the source code of the C++ Program to check strong number or not using recursion.

Code:

#include<iostream>
#include<cmath>
using namespace std;
int Factorial(int num)
{
   if(num<=0)
    return 1;
   else
   return num*Factorial(num-1);
}
int check_StrongNumber(int num)
{
    int fact;
    static int sum=0;
     if(num>0)
     {
         fact=1;
         int rem=num%10;
         check_StrongNumber(num/10);
         fact=Factorial(rem);
         sum+=fact;
     }
     return sum;
     }
int main()
{
    int num;
    cout<<"Enter a number:";
    cin>>num;
   if(check_StrongNumber(num)==num)
    cout<<"It is a Strong Number.";
   else
    cout<<"It is not a strong Number.";
}

Input/Output:
Enter a number:225
It is not a strong Number.

Program in Java

Here is the source code of the Java Program to check strong number or not using recursion.

Code:

import java.util.Scanner;
public class StrongNumber {
static int Factorial(int num)
{
   if(num<=0)
    return 1;
   else
   return num*Factorial(num-1);
}
int sum=0;
int check_StrongNumber(int num)
{
    int fact;
    
     if(num>0)
     {
         fact=1;
         int rem=num%10;
         check_StrongNumber(num/10);
         fact=Factorial(rem);
         sum+=fact;
     }
     return sum;
     }

public static void main(String[] args) {
Scanner cs=new Scanner(System.in);
    int num;
    System.out.print("Enter a number:");
    num=cs.nextInt();
    StrongNumber ob=new StrongNumber();
    if(ob.check_StrongNumber(num)==num)
    System.out.print("It is a Strong Number.");
       else
       System.out.print("It is not a Strong Number.");
    cs.close();
}
}

Input/Output:
Enter a number:40585
It is a Strong Number.

Program in Python

Here is the source code of the Python Program to check strong number or not using recursion.

Code:

def Factorial(num):
    if num<=0:
        return 1
    else:
        return num*Factorial(num-1)
sum=0
def check_StrongNumber(num):
    global sum
    if (num>0):
        fact = 1
        rem = num % 10
        check_StrongNumber(num // 10)
        fact = Factorial(rem)
        sum+=fact
    return sum
num=int(input("Enter a number:"))
if (check_StrongNumber(num) == num):
    print("It is a strong Number.")
else:
    print("It is not a strong Number.")

Input/Output:

Post a Comment

0 Comments