Напишите программу(НА ПИТОНЕ), которая переводит переданное её целое число (возможно, отрицательное)...

Тематика Информатика
Уровень 5 - 9 классы
программирование Python двоичный код целое число отрицательные числа перевод чисел процедура примеры ввода вывода
0

Напишите программу(НА ПИТОНЕ), которая переводит переданное её целое число (возможно, отрицательное) в двоичный код. Используйте процедуру.

Программа должна вывести двоичное представление переданного её числа.

Примеры входные данные 5 выходные данные 101 входные данные -14 выходные данные -1110 (НА ПИТОНЕ!)

avatar
задан 4 месяца назад

3 Ответа

0

def to_binary(n):

if n < 0:
    print("-", end="")
    n = -n
if n > 1:
    to_binary(n // 2)
print(n % 2, end="")

num = int(input()) to_binary(num)

avatar
ответил 4 месяца назад
0

def to_binary(n):

if n < 0:
    binary = '-' + bin(-n)[2:]
else:
    binary = bin(n)[2:]
    
return binary

num = int(input()) print(to_binary(num))

avatar
ответил 4 месяца назад
0

Конечно! Вот пример программы на языке Python, которая переводит переданное ей целое число (возможно, отрицательное) в двоичный код. Для этого используется процедура (функция).

def int_to_binary(n):
    """
    Функция, которая переводит целое число в двоичное представление.
    :param n: целое число
    :return: строка, представляющая двоичное представление числа
    """
    if n == 0:
        return "0"
    
    is_negative = n < 0
    n = abs(n)
    
    binary_str = ""
    while n > 0:
        binary_str = str(n % 2) + binary_str
        n = n // 2
    
    if is_negative:
        binary_str = "-" + binary_str
    
    return binary_str

# Пример использования функции
if __name__ == "__main__":
    number = int(input("Введите целое число: "))
    binary_representation = int_to_binary(number)
    print(binary_representation)

Пояснение работы программы:

  1. Функция int_to_binary(n):

    • Принимает целое число n.
    • Если число равно 0, сразу возвращает строку "0".
    • Проверяет, является ли число отрицательным (is_negative = n < 0). Если да, то устанавливает флаг is_negative в True и берет модуль числа (abs(n)).
    • Инициализирует пустую строку binary_str, которая будет содержать двоичное представление числа.
    • Использует цикл while, чтобы делить число n на 2 и сохранять остаток от деления в строку binary_str. Результат деления используется для следующей итерации до тех пор, пока n не станет равным 0.
    • Если флаг is_negative установлен в True, добавляет минус к началу строки binary_str.
    • Возвращает строку binary_str, которая теперь содержит двоичное представление числа.
  2. Основная часть программы:

    • Считывает целое число с ввода пользователя.
    • Вызывает функцию int_to_binary для преобразования введенного числа в двоичное представление.
    • Выводит двоичное представление числа на экран.

Примеры работы программы:

  • Для входного числа 5:
    • Программа выведет 101.
  • Для входного числа -14:
    • Программа выведет -1110.

Эта программа корректно обрабатывает как положительные, так и отрицательные числа, и выводит их двоичное представление.

avatar
ответил 4 месяца назад

Ваш ответ

Вопросы по теме