Mi sto facendo questotrova la potenza massima di due in meno del numero X?
def power_two(n, base = -1):
result = 2 ** base
if result < n:
base += 1
power_two(n, base)
else:
if result == n:
print base
else:
print base - 1
qual è il modo divinatorio per trovare più grande potenza di due meno di un numero X?
EDIT esempio: power_two (100) restituisce solo il potere
Quando dici meno di, intendi "minore o uguale" o "rigorosamente meno di"? In altre parole, cosa dovrebbe restituire se n è una potenza esatta di 2, ad esempio 32? –
Cos'è "pythonic" sull'uso dei logaritmi? Questi sono gli antecedenti di Python di 377 anni circa. –
@JUST MY correct OPINION: cosa suggeriresti invece? –