3977 - Expo N

De la Universitas MediaWiki

Sursa: [1]

Cerinţa

Se citește numărul natural n. Să se determine exponentul maxim e cu proprietatea că 2^e ≤ n.

Date de intrare

Programul citește de la tastatură numărul n.

Date de ieșire

Acest program calculează exponentul maxim al unei puteri a lui 2 care este mai mic sau egal cu numărul n introdus de utilizator.

Datele de ieșire pentru acest program sunt un mesaj afișat pe ecran care indică exponentul maxim calculat pentru numărul n introdus de utilizator. Mesajul afișat va fi de forma: "Exponentul maxim este: X", unde X va fi valoarea calculată pentru exponentul maxim al lui 2 care este mai mic sau egal cu n.

Restricţii şi precizări

  • 1 ⩽ n ⩽ 2.000.000.000

Exemplul 1

Intrare
4
Ieșire
Datele corespund cerințelor.
576


Exemplul 2

Intrare
16
Ieșire
Datele introduse nu corespund cerințelor.


Exemplul 3

Intrare
7
Ieșire
Datele corespund cerințelor.
25401600


Rezolvare

#3977
def exponent_maxim(n):
    e = 0
    while 2**e <= n:
        e += 1
    return e-1


if __name__ == '__main__':
    n = int(input("Introduceți numărul n: "))
    print("Exponentul maxim este:", exponent_maxim(n))