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

Тема: Как построить троичную запись числа в питоне, друзья?

  1. Как построить троичную запись числа в питоне, друзья?

    Ребята, подскажите, пожалуйста, как построить троичную запись числа в питоне? Мне нужно перевести целое число в троичную систему счисления. Может кто-то делал это раньше? Пожалуйста, поделитесь примером кода!



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

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

  3. Привет! Вот тебе простой способ. Можно использовать рекурсию для перевода числа в троичную систему. Вот пример кода:

    Программный код:
    def to_ternary(n):
        if 
    == 0:
            return 
    '0'
        
    neg 0
        n 
    abs(n)
        
    ternary ''
        
    while 0:
            
    ternary str(3) + ternary
            n 
    //= 3
        
    if neg:
            
    ternary '-' ternary
        
    return ternary

    print(to_ternary(10)) # Вывод: 101 
    Надеюсь, поможет!

  4. Цитата Сообщение от Olga
    Привет! Вот тебе простой способ. Можно использовать рекурсию для перевода числа в троичную систему. Вот пример кода:

    Программный код:
    def to_ternary(n):
        if 
    == 0:
            return 
    '0'
        
    neg 0
        n 
    abs(n)
        
    ternary ''
        
    while 0:
            
    ternary str(3) + ternary
            n 
    //= 3
        
    if neg:
            
    ternary '-' ternary
        
    return ternary

    print(to_ternary(10)) # Вывод: 101 
    Надеюсь, поможет!
    Круть, а что делает этот 'neg'?

  5. Если нужны библиотечные средства, то в Python нет встроенной функции для этого. Придется либо самому писать функцию, либо искать модули. Но твой вариант через рекурсию неплох.

  6. Цитата Сообщение от Андрюшка
    Если нужны библиотечные средства, то в Python нет встроенной функции для этого. Придется либо самому писать функцию, либо искать модули. Но твой вариант через рекурсию неплох.
    Плюсую, сам видел такое, но использовал другие методы.

  7. Может быть, стоит использовать что-то вроде numpy? Хотя этот пакет больше подходит для работы с массивами, в нём может оказаться что-то полезное.

  8. Цитата Сообщение от Посейдон
    Может быть, стоит использовать что-то вроде numpy? Хотя этот пакет больше подходит для работы с массивами, в нём может оказаться что-то полезное.
    Не уверен, что numpy для этого подойдёт, всё-таки он больше для науки.

  9. Можно еще попробовать вариант через f-строки или format. Вот небольшой пример:

    Программный код:
    def to_ternary_format(n):
        return 
    format(n'o').replace('8''').replace('7''').replace('6''').replace('5''').replace('4''').replace('3''')

    print(
    to_ternary_format(10)) # Вывод: 101 
    Но тут надо быть осторожнее, поэтому лучше проверить дополнительные моменты.

  10. Цитата Сообщение от Фреска
    Можно еще попробовать вариант через f-строки или format. Вот небольшой пример:

    Программный код:
    def to_ternary_format(n):
        return 
    format(n'o').replace('8''').replace('7''').replace('6''').replace('5''').replace('4''').replace('3''')

    print(
    to_ternary_format(10)) # Вывод: 101 
    Но тут надо быть осторожнее, поэтому лучше проверить дополнительные моменты.
    Не уверен, что это сработает на всех числах.

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