موسسه خیریه محک

شهر ریاضی بازی-ریاضی

ساده‌ترین راه برای چاپ یک عدد صحیح به صورت باینری

+1 امتیاز
2,806 نمایش

می‌خوام دنباله‌ی صفر و یک یک عدد صحصح ذخیره شده در کامپیوتر رو چاپ کنم. چه راه ساده‌ای وجود داره؟

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پرسیده شده پنجشنبه ۱۲ اردیبهشت ۱۳۹۲ در C++ توسط prodo  

1 پاسخ

0 امتیاز

راه ساده استفاده از bitset به صورت زیر هست

#include <iostream>
int main()
{
  int i = 123;
  std::bitset<sizeof(int)*CHAR_BIT> bs(i);
  std::cout<<bs;
}
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده پنجشنبه ۱۲ اردیبهشت ۱۳۹۲ توسط prodo  
ویرایش شده دوشنبه ۱۴ مرداد ۱۳۹۲ توسط prodo

خروجی bitset به صورت عدده یا رشته؟
یعنی اگه مثلا بخوام با printf چاپ کنم باید %d بذارم؟

خود bitset و می‌شه به صورت صحیح به خروجی فرستاد printf("%d", bs).
اما وقتی از cout استفاده می‌کنیم (به طور کلی از خروجی استاندارد) سربارگذاری به گونه‌ای انجام شده که بیت‌ها رو چاپ می‌کنه

خیلی ممنون، توضیحات کامله مثل همیشه...