//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.
//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.
No comments:
Post a Comment