Задача «Степень двойки» Решение

Условие

По данному натуральному числу N найдите наибольшую целую степень двойки, не превосходящую N. Выведите показатель степени и саму степень.

Операцией возведения в степень пользоваться нельзя!

Решение

n = int(input())
two_in_power = 2
power = 1
while two_in_power <= n:
    two_in_power *= 2
    power += 1
print(power - 1, two_in_power // 2)

Комментарии

  1. Вот такая реализация покороче:
    n = int(input())
    i = 1
    while n > = 2**i:
    i += 1
    print((i-1), 2**(i-1))

Добавить комментарий

Ваш e-mail не будет опубликован.