Перевод в двоичную систему


#1

Ребят, мне нужно выполнить задание, в котором задача стоит в том, что бы перевести числа из 10-тичной системы счисления в двоичную.Все бы ничего, если бы в условии задачи небыло пункта о том, что метод input.toString(2); использовать нельзя…
Какие есть еще способы перевода числа из десятичной системы в двоичную? Кроме toString…

Очень срочно


#2

Не помню точно есть ли другие методы. Если нету, то тебе прийдется делать все через математику, “своими руками” делать вычисления. Даже скорее всего. Если задача “просто перевести в двоичную систему”, то это не на 1 строчку кода… иначе смысл такую задачу давать?


#3

Я просто даже со стороны математики не особо понимаю как это сделать. Не мог бы помочь?


#4

Поищи на Двоичная система счисления — Википедия раздел Преобразование чисел


#5

Тебе нужно понять что такое двоичная система исчисления, как она соотносится с десятичной. Например попробуй на бумажке перевести 10 в двоичную систему. Потом попробуй другое число. Посмотри на подходы, найди общее, напиши алгоритм для этого подхода.


#6
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000

Видишь как единичка “скачет” из разряда в разряд?

например 3 кодируется как 11. Следующее число это 4, нужно добавить 1 к двоичному числу 11. Добавляешь к самой правой 1, получаешь переполнение разряда, переполненную единичку добавляешь к числу левее. Там тоже единица, тоже переполнение разряда, добавляешь 1 к левому числу (там ничто, или 0). Получаешь 100. Это двоичное представление 4.

Этот момент понятен?


#7

Да на Вики написано даже какие математические операции нужно делать, показан пример перевода (и туда и обратно)


#8

Вот о чем речь. https://ru.wikipedia.org/wiki/Двоичная_система_счисления#Преобразование_десятичных_чисел_в_двоичные