Мне было поручено написать код, который будет вводить пользовательский ввод и преобразовать число в его двоичное число. До сих пор я написал код, но у меня есть одна проблема. Я должен использовать цикл for и метод quotient-остаток. Когда я выводю остаток (двоичный), он не печатает последнюю цифру.C++ Как преобразовать десятичное число в двоичный?
Вопрос, который я задаю, заключается в следующем: что мне нужно изменить в цикле for for, чтобы он распечатывал последнюю цифру двоичного номера?
int main()
{
int num;
int rem;
cout << "Please enter a number: ";
cin >> num;
for (int i = 0; i <= (num + 1); i++)
{
num /= 2;
rem = num % 2;
cout << rem;
}
_getch();
return 0;
}
Любая помощь приветствуется, спасибо!
Возможный дубликат [C++ - десятичное преобразование в двоичное преобразование] (http://stackoverflow.com/questions/22746429/c-decimal-to-binary-converting) –
просто обмениваются обеими командами 'num/= 2;' и 'rem = num% 2;' Вы начинаете с деления числа на 2, и вы теряете последний двоичный номер. – Franck