十進位到二進位很簡單 就不說了
十六進位轉十進位 再從十進位轉成二進位
int tran16To10 (int num) {
int result = 0;
stack<int> numbers;
while (num) {
numbers.push(num%10);
num/=10;
}
while (!numbers.empty()) {
result += numbers.top()*(pow(16,(numbers.size()-1)));
numbers.pop();
}
return result;
}
最後要計算1的數量時 二進位的值可以用stack裝
while (!stack2b.empty()) {
if (stack2b.top()) counter2b++;
stack2b.pop();
}