PDA

View Full Version : سوال: تبدیل عدد در مبنای 10 به 2 فقط با استفاده از while



mohammad jamalian
سه شنبه 25 آبان 1395, 15:35 عصر
با سلام
من می خوام یه عدد رو از مبنای 10 به 2 ببرم و فقط از حلقه while استفاده کنم.
این کد رو نوشتم ولی عددی که بهم بر می گردونه برعکس هست(نمی خوام عدد اخر رو دوباره برعکس کنم)
البته این جا به زبان c هست ولی فرقی نمیکنه.


int i, j = 1, R;
scanf("%d", &i);
R = i;
while(i > 1) {
j = i % 2;
i = i / 2;
printf("%d", j); }
چی کار کنم؟

mohammad jamalian
جمعه 28 آبان 1395, 01:31 صبح
سلام
کسی که سوال منو جواب نداد ولی من خودم جوابشو می نویسم:


int x, r, p = 1, sum = 0;
x = int.Parse(Console.ReadLine());
while (x != 0)
{
r = x % 2;
sum += r * p;
x /= 2;
p = p * 10;
}
Console.Write(sum);
Console.Read();

Mahsa.982
شنبه 04 خرداد 1398, 17:28 عصر
سلام ممنون بابت تبدیل 10به دو شما 10به هشت وشانزده رو میدونین اگه بلدین لطفا اونارو هم بذارید ممنون