2 進数を 10 進数に変換したい。私のコードスニペット:
int main(){
string count;
char number;
int counter;
int score = 0;
cout << "Wpisz liczbę w systemie binarnym" << endl;
cin >> count;
count << endl;
counter = count.length();
for (int i = 0; i < counter; i++)
{
number = count[i];
int aaa = (int) number - '0' // is that correct ? I think not.
score = aaa * pow(2,i) + score;
}
count <<wynik;
return 0;
}
しかし、私のプログラムは非常に奇妙なスコアを出します。例えば:
入力 : 100 (10 進数 8) 出力 : 1
入力 1000 (10 進数 16) 出力 : 1
どうしてか分かりません。手伝って頂けますか ?それが char の問題だと思いますか?私は本当ですか?
ありがとう、
私の英語でごめんなさい