-->
Showing posts with label Armstrong number in given range. Show all posts
Showing posts with label Armstrong number in given range. Show all posts

program to display all Armstrong numbers between 0 and 100 solution here we are taking Armstrong number with 3 digit. but more digit also can be taken

//armstrong numbers lying in given range 0 and 1000
//we are taking numbers with three digits
#include<stdio.h>
#include<conio.h>
#include<math.h>
void main()
{
clrscr();
int i=1,rem,k,sum=0;
while(i<=1000)
{
     k=i;
     sum=0;
while(k!=0)
 {
   rem=k%10;
   sum=sum+pow(rem,3);
   k=k/10;
 }

if(sum==i)
{
      printf("%d\n",i);

}
sum=0;
 i++;

}
getch();
}
-----------------------------------------------------------------------------------------------------------------------------------------------------------
logics in mind:-
-------------------
->we have to display Armstrong numbers in given range 0 and 1000.Armstrong can be for 3/4 digits numbers.
   Here we taking 3 digits only.
->First  we take first number (k) then we apply following method        
                  ->For this, 
                 ->we have to divide by 10 to get last digit as remainder 
                 ->we find its cube and then go for sum
                -> to get second digit, we get first 12 and for this , we use 123/10.It is done to get integer                           part  only.
                  ->then we compare the number 'i' with that sum. If they are same then we display that.
->We repeat this until the value reaches 0 and for all numbers and individually. We use loop for this as shown above in the code.     
->as the first number is checked, we , once again, assign value '0' to sum to check next value.And this goes on.