@Olderwarm

Почему программа не переводит числа с шестнадцатеричной системы в другие СС?

def f(x, a, b):
    x = int(str(x), a)
    s = ''
    while x > 0:
        s += str(x % b)
        x //= b
    return s[::-1]
x = f(A13, 16, 10)
print(x)
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
vabka
@vabka
Токсичный шарпист
Некорректный синтаксис.
A13 должно быть в кавычках

PS: зачем экономить на буквах? Пишите уж полностью имена переменных
def convert_radix(source_number_str, source_radix, destination_radix):
    number = int(source_number_str, source_radix)
    result = ''
    while source_number > 0:
        result += str(number % destination_radix)
        number //= destination_radix
    return result[::-1]
x = convert_radix('A13', 16, 10)
print(x) # 2579
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы