Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: Помогите с переводом в шестеричную систему счисления python, плиз!

  1. Помогите с переводом в шестеричную систему счисления python, плиз!

    Ребзя, кого не затруднит, нужна помощь. Как переводить числа в шестеричную систему счисления на Python? Вот сижу ломаю голову. Мне надо переводить целые числа в базу 6. Хочу, чтобы код был простой и понятный, что-то типа функции, которая принимает целое число и возвращает строку в шестнадцатеричной системе счисления (именно в 6, а не в 16!). Веселее всего будет пример кода.



  2. Ждём вас в нашем чате в Телеграмм ==>> @pythoneer_chat

    А ТАКЖЕ: Канал о Python, статьи и книги ==>>
    @pythoneer_ru

  3. Такая задачка Я бы написал функцию типа этой:

    Программный код:
    def to_base6(num):
        if 
    num == 0:
            return 
    "0"
        
    digits ""
        
    while num:
            
    digits += str(num 6)
            
    num //= 6
        
    return digits[::-1]

    print(
    to_base6(10))  # это выдаст '14' 
    Надеюсь, это тебя выручит!

  4. Цитата Сообщение от Ирина Сергеевна
    Такая задачка Я бы написал функцию типа этой:

    Программный код:
    def to_base6(num):
        if 
    num == 0:
            return 
    "0"
        
    digits ""
        
    while num:
            
    digits += str(num 6)
            
    num //= 6
        
    return digits[::-1]

    print(
    to_base6(10))  # это выдаст '14' 
    Надеюсь, это тебя выручит!
    Крутяк! Код зачетный, и комментарий к принту пригодится. Пойду-тестанусь.

  5. Вариант с использованием рекурсии тоже норм:

    Программный код:
    def to_base6_rec(num):
        if 
    num == 0:
            return 
    "0"
        
    else:
            return 
    to_base6_rec(num // 6) + str(num % 6)

    print(to_base6_rec(10))  # это тоже "14" 
    Надеюсь, понравится. Пиши, если че не так.

  6. Цитата Сообщение от EvAlex
    Вариант с использованием рекурсии тоже норм:

    Программный код:
    def to_base6_rec(num):
        if 
    num == 0:
            return 
    "0"
        
    else:
            return 
    to_base6_rec(num // 6) + str(num % 6)

    print(to_base6_rec(10))  # это тоже "14" 
    Надеюсь, понравится. Пиши, если че не так.
    Рекурсия заходит ништяк, спасибо за альтернативу!

  7. Эй! Ты можешь ещё попробовать использовать встроенную функцию format() или f-строки, если хочешь совсем упростить код. Хотя, честно говоря, встроенных функций прям для базы 6 нет, так что свои самописки типа выше - лучший выбор.

  8. Цитата Сообщение от КаинитовыйРассвет
    Эй! Ты можешь ещё попробовать использовать встроенную функцию format() или f-строки, если хочешь совсем упростить код. Хотя, честно говоря, встроенных функций прям для базы 6 нет, так что свои самописки типа выше - лучший выбор.
    Чётко сказал, жаль что ф-строки не помогают с базой 6, можно было бы совсем схитрить)

  9. Ну смотри, если подсказать еще, то превращение числа в строку с любой базой происходит через модификации алгоритма преобразования. На Питоне это решается просто. Бери и пользуй:

    Программный код:
    def int_to_base6(n):
        if 
    == 0:
            return 
    '0'
        
    digits = []
        while 
    n:
            
    digits.append(int(6))
            
    // 6
        
    return ''.join(str(e) for e in digits[::-1])

    # Пример использования
    print(int_to_base6(34))  # результатом будет '54' 
    Надеюсь, этот код прояснит что как. Пиши в случае чего!

  10. Цитата Сообщение от Татьяна Петровна
    Ну смотри, если подсказать еще, то превращение числа в строку с любой базой происходит через модификации алгоритма преобразования. На Питоне это решается просто. Бери и пользуй:

    Программный код:
    def int_to_base6(n):
        if 
    == 0:
            return 
    '0'
        
    digits = []
        while 
    n:
            
    digits.append(int(6))
            
    // 6
        
    return ''.join(str(e) for e in digits[::-1])

    # Пример использования
    print(int_to_base6(34))  # результатом будет '54' 
    Надеюсь, этот код прояснит что как. Пиши в случае чего!
    В точку! Тоже норм вариант, подходит не хуже других.

Страница 1 из 2 12 ПоследняяПоследняя