اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

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

چاپ الگوی بیتی یک عدد صحیح

+1 امتیاز
59 نمایش

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

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

1 پاسخ

0 امتیاز

یک روش این کار به صورت زیر هست

#include <iostream>
#include <vector>
using namespace std;

vector<int> convert(int x)
{
  vector<int> ret;
  while(x)
  {
    if (x&1)
      ret.push_back(1);
    else
      ret.push_back(0);
    x>>=1;  
  }
  reverse(ret.begin(),ret.end());
  return ret;
}

int main()
{
  vector<int> x = convert(2);
  for(unsigned int i=0; i<x.size(); i++)
    cout<<x[i];
  return 0;
}

این کد رو می‌شه به صورت مختصرتر هم نوشت

#include <iostream>
#include <vector>
using namespace std;

int main()
{
  int j = 2;
  vector<int> x;
  do { x.push_back( j & 1 ); } while( j >>= 1 );
  for(int i=x.size()-1; i>=0; i--)
    cout<<x[i];
  return 0;
}

یک روش هم به صورت زیر هست

#include <iostream>
#include <bitset>
using namespace std;

int main()
{
  int j = 2;
  bitset<32> x(j);
  cout<<x;
  return 0;
}
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده دوشنبه ۲۱ مرداد ۱۳۹۲ توسط prodo  
ویرایش شده دوشنبه ۲۱ مرداد ۱۳۹۲ توسط prodo