Post Top Ad

Your Ad Spot

Pages

Sunday 9 February 2020

Display Armstrong Numbers In a Range OF A To B

#include<stdio.h>
#include<conio.h >
// Digit count LOGIC
int NofDig(int no)
 {
int i,res=0;
  for(i=0;no;i++)
     {
  res=res*10+no%10;
  no=no/10;
     }   
  return i;
 }
 //POWER OF A number

 int Power(int x,int y)
 {
  int i,p=1;
for(i=1;i<=y;i++)
{
p=p*x;
}
return p;
 }
 int IsArmstrong(int no)
 {
int temp=no,res=0,sum=0;
  int i,dig=NofDig(no);
  for(i=0;no;i++)
  { 
res=res*10+no%10; 
    no=no/10;
sum=Power(res,dig)+sum;
res=0;

  }
  return sum==temp;
 }
  void IsArmStrAtoB(int a,int b)
 {
    int i;
for(i=a;i<=b;i++)
{
   if(IsArmstrong(i))
   {   
   printf(" %d",i);
   }
}
}
 void main()
{
  IsArmStrAtoB(7,407);
  
}

No comments:

Post a Comment

Post Top Ad

Your Ad Spot

Pages