迴圈
輸入數字
判別數字是否為2的倍數
是
二進位為1
不是
二進位為0
數字除以2
重複直到數字變成0
因為二進制轉換運算與輸出為後進先出(LIFO)
所以採用堆疊紀錄
#include <iostream>
#include <stack>
using namespace std;
int main()
{ㄉㄜ
int num;
stack <char>binary;
while(cin >> num)
{
while(num > 0)
{
if(num%2)
binary.push('1');
else
binary.push('0');
num/=2;
}
while(!binary.empty())
{
cout << binary.top();
binary.pop();
}
cout << endl;
}
return 0;
}
全站熱搜
留言列表