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

Тема: Как перевести в четверичную систему в питоне: Сверим пайтоны?

  1. Как перевести в четверичную систему в питоне: Сверим пайтоны?

    Привет, народ! Пишу прогу и вот застрял на такой теме: надо число перевести в четверичную систему (ну типа base 4) в питоне. Я вроде нашел что-то по переводу в двоичную и шестнадцатеричную, но как-то не очень понятно как именно это можно сделать с четверичной. Может, кто шарит, подскажет, как это реализовать? Бросьте код, если есть. Важно, чтобы все по-честному и по-пайтонивски! Благодарю заранее!



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

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

  3. Привет! Вот один из способов перевести число в четверичную систему в Питоне:

    Программный код:
    def to_base_4(n):
        if 
    == 0:
            return 
    '0'
        
    digits = []
        while 
    n:
            
    digits.append(str(4))
            
    //= 4
        
    return ''.join(digits[::-1])
      
    number 42
    print(to_base_4(number)) # вывод: 222 
    Просто передай своё число в функцию to_base_4. Если что-то не так или есть вопросы — пиши!

  4. Цитата Сообщение от Иван
    Привет! Вот один из способов перевести число в четверичную систему в Питоне:

    Программный код:
    def to_base_4(n):
        if 
    == 0:
            return 
    '0'
        
    digits = []
        while 
    n:
            
    digits.append(str(4))
            
    //= 4
        
    return ''.join(digits[::-1])
      
    number 42
    print(to_base_4(number)) # вывод: 222 
    Просто передай своё число в функцию to_base_4. Если что-то не так или есть вопросы — пиши!
    Ого, наглядный пример! Работает как часы! Не знал, что можно так легко перевести числа. Спс!

  5. Есть проще и короче вариант, юэзи:

    Программный код:
    def to_base_4(n):
        return 
    format(n'04b').replace('b''')

    number 42
    print(to_base_4(number)) # вывод: 222 
    Но это больше для маленьких чисел. Попробуешь?

  6. Цитата Сообщение от Runna
    Есть проще и короче вариант, юэзи:

    Программный код:
    def to_base_4(n):
        return 
    format(n'04b').replace('b''')

    number 42
    print(to_base_4(number)) # вывод: 222 
    Но это больше для маленьких чисел. Попробуешь?
    Ну, это вообще хитроумный хак! Но вроде не совсем правильно для base 4...

  7. Если кому интересно как это делается с рекурсией:

    Программный код:
    def to_base_4(n):
        if 
    4:
            return 
    str(n)
        else:
            return 
    to_base_4(// 4) + str(n % 4)

    number 123
    print(to_base_4(number)) # вывод: 1323 
    Замороченный, но работает четко.

  8. Цитата Сообщение от Артем Андреевич
    Если кому интересно как это делается с рекурсией:

    Программный код:
    def to_base_4(n):
        if 
    4:
            return 
    str(n)
        else:
            return 
    to_base_4(// 4) + str(n % 4)

    number 123
    print(to_base_4(number)) # вывод: 1323 
    Замороченный, но работает четко.
    Норм тема! Немного академично, но код понятен и практичный. Юзаю!

  9. Я тут вспомнил, что есть метод считывания вида:

    Программный код:
    def to_base_4(n):
        return 
    ''.join(str((// (4 ** i)) % 4) for i in range(int(math.log(n, 4)), -1, -1))

    import math
    number 
    15
    print(to_base_4(number)) # вывод: 33 
    Плюс пара строк для стиля!

  10. Цитата Сообщение от PippiLongstocking
    Я тут вспомнил, что есть метод считывания вида:

    Программный код:
    def to_base_4(n):
        return 
    ''.join(str((// (4 ** i)) % 4) for i in range(int(math.log(n, 4)), -1, -1))

    import math
    number 
    15
    print(to_base_4(number)) # вывод: 33 
    Плюс пара строк для стиля!
    Красиво! Навороченный способ, но результат на уровне. Благодарю!

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