Один из алгоритмов получения двоичного числа из десятичного можно описать следующим образом:
- Исходное десятичное число делится на два (основание двоичной системы счисления).
- В одну переменную записывается частное в виде целого числа, в другую – остаток в виде строки (если остатка нет, то записывается ноль).
- Если частное не было равно нулю, то оно снова делится на два. Переменная, связанная со старым частным связывается с новым (прежнее частное теряется). Новый остаток с помощью операции конкатенации добавляется в начало строковой переменной, где хранятся остатки.
- П. 3 продолжает повторяться до тех пор, пока частное не станет равно нулю.
- Остатки от деления, записанные в обратном порядке, представляют собой двоичное представление заданного десятичного числа.
x = int(input("Введите натуральное число: "))
n = ""
while x > 0:
y = str(x % 2)
n = y + n
x = int(x / 2)
print (n)
Пример с сайта - http://younglinux.info/algorithm/binary
Системы счисления
Те, у кого в школе была информатика, знают, что числа могут быть представлены не только в десятичной системе счисления. К примеру, в компьютере используется двоичный код, и, к примеру, число 19 в двоичной системе счисления будет выглядеть как 10011. Также иногда нужно переводить числа из одной системы счисления в другую. Python для этого предоставляет несколько функций:
|