3977 - Expo N: Difference between revisions
Dragos1234 (talk | contribs) |
Dragos1234 (talk | contribs) |
||
Line 7: | Line 7: | ||
== Date de ieșire == | == 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 == | == Restricţii şi precizări == |
Revision as of 15:24, 25 March 2023
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
<syntaxhighlight lang="python" line>
- 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))
</syntaxhighlight>