Содержание
Памятка по переводу чисел в Python
- Для перевода в 2-ю систему используйте bin().
- Для перевода в 8-ю систему используйте oct().
- Для перевода в 16-ю систему используйте hex().
- Для перевода из любой системы в 10-ю используйте int(‘строка’, основание).
- Для произвольных систем реализуйте алгоритм деления на основание.
- Помните, что результат bin(), oct(), hex() — строка с префиксом.
- Для удаления префикса используйте срез [2:].
- Для перевода дробных чисел используйте отдельный алгоритм для целой и дробной части.
- Тестируйте код на граничных значениях (0, отрицательные числа).
- Используйте встроенную документацию Python (help()) для уточнения деталей.
Функция (int)
Позволяет преобразовывать другие типы данных в формат целого числа. Например, ты можешь преобразовать вещественное число или строку в целое число.
>>> int (3.65)3>>> int (-9.123)— 9>>> int («3456»)3456
Эта функция очень сильно пригодится тебе на экзамене, потому что с помощью нее ты сможешь перевести число из указанной системы счисления в десятичную.
Просто введи int(str, base)str — передает число в виде строки, base — основание СС.
- аргумент base может быть целым числом в диапазоне от 2 до 36;
- в обратную сторону перевод не работает.
Использование питона поможет сэкономить время и избежать ошибок, потому что так тебе не придется переводить числа через разряды: нужно просто ввести информацию в компьютер, а программа все сделает сама.
Но это еще не все! Теперь из десятичной ты можешь перевести число в другие системы счисления. Читай дальше, чтобы узнать как.
Перевод числа из 10СС в NCC
Напишем программу для перевода чисел из десятичной системы счисления в СС с любым основанием.
Указываем СС, в которую исходное число нам нужно перевести (от двоичной системы до шестнадцатеричной)
Находим остаток от деления исходного числа на основание системы счисления.
Этот остаток и будет следующей цифрой в новом числе (в выбранной системе счисления).
Делим без остатка исходное число. Это обновленное число будет использовано в следующей итерации цикла.
Теперь ты знаешь, как пользоваться возможностями Python для перевода чисел в разные СС. А если хочешь получить больше полезных материалов для самостоятельной подготовки к ЕГЭ по информатике, читай другие наши статьи:
- Методы ручного перевода из 10СС в любую другую и обратно;
- Особенности двоичной системы счисления;
Часто задаваемые вопросы о переводе чисел в Python
Вопрос: Как перевести число из десятичной системы в двоичную в Python?
Ответ: Используйте встроенную функцию bin().
Вопрос: Как перевести число из десятичной системы в восьмеричную?
Ответ: Используйте встроенную функцию oct().
Вопрос: Как перевести число из десятичной системы в шестнадцатеричную?
Ответ: Используйте встроенную функцию hex().
Вопрос: Можно ли перевести число в систему счисления с основанием от 2 до 36?
Ответ: Да, для этого можно написать собственную функцию или использовать сторонние библиотеки.
Вопрос: Как работает функция int() для перевода из других систем?
Ответ: Функция int() принимает строку и основание системы счисления, например int(‘101’, 2) вернет 5.
Вопрос: Как перевести число из 10-й системы в 3-ю?
Ответ: В Python нет встроенной функции для этого, нужно реализовать алгоритм деления на основание.
Вопрос: Какой алгоритм используется для перевода в любую систему счисления?
Ответ: Алгоритм последовательного деления числа на основание новой системы с записью остатков.
Вопрос: Как перевести дробное число из десятичной системы?
Ответ: Дробная часть переводится умножением на основание, целые части собираются в результат.
Вопрос: Есть ли готовые функции для перевода в системы с основанием больше 16?
Ответ: В стандартной библиотеке Python таких функций нет, но их легко написать самостоятельно.
Вопрос: Как проверить правильность перевода числа?
Ответ: Выполните обратный перевод с помощью int() и сравните с исходным числом.























