Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

ПОМОГИТЕ ПО ИНФОРМАТИКЕ СРОЧНО

Роман Пастухов Мастер (1168), на голосовании 3 недели назад
Напишите программу, которая определяет, является ли заданное число
степенью 3.
Через цикл while
НА ПАСКАЛЕ
Голосование за лучший ответ
Роман Якубовский Профи (532) 1 месяц назад
def is_power_of_three(n):
if n < 1:
return False
while n % 3 == 0:
n //= 3
return n == 1

# Пример использования
number = int(input("Введите число: "))
if is_power_of_three(number):
print(f"{number} является степенью 3.")
else:
print(f"{number} не является степенью 3.")
Lordini Гуру (4493) 1 месяц назад
Как работает программа:
Проверяет, что число больше или равно 1, так как степени 3 для отрицательных чисел и 0 не определены.
Устанавливает начальное значение current_power в 1 (что соответствует
3
0
3
0
).
Использует цикл while, чтобы умножать current_power на 3 до тех пор, пока оно не станет больше или равно введенному числу.
В конце проверяет, равно ли current_power введенному числу и возвращает соответствующий результат.
Похожие вопросы