به این روش هم می شه بدون نیاز به برگردوندن:
کد:
کد:باقیمانده ی اول رو در یک ضرب می کنیم دومی را در 10 سومی در 100 و .... و مقادیر را به یک متغیر مانند s اضافه می کنیم.
کد PHP:
#include<stdio.h>
int main()
{
int n,m=0,q=0;
long int s=0,l=1;
printf("\nEnter decimal number");
scanf("%d",&n);
do
{
q=n/2;
m=n%2;
s+=l*m;
n=q;
l=l*10;
}
while(n>1);
s=s+n*l;
printf("%ld",s);
}
البته این روش اشکالاتی هم داره:
برای اعداد بزرگ به انواع عددی بزرگ نیاز هست.با int اعداد تا 31 ، با long int اعداد تا 1023 و با double اعداد تا 32767 قابل تبدیل اند.
علاقه مندی ها (Bookmarks)