Écrivez un programme qui lit un entier et affiche la valeur de la plus grande puissance de 2 qui soit inférieure ou égale à ce nombre.
1 <= N <= 100 000 000
, où N
est le nombre fourni en entrée.entrée :
73
sortie :
64
vaut en effet , qui est inférieur à . La puissance de suivante, vaut et est donc supérieure à .
def main(): n = int(input()) puissance = 1 while puissance <= n: puissance <<= 1 puissance >>= 1 print(puissance) main()
puissance > n
.puissance
est le plus grand possible avec puissance <= n
.