1961 - Cosmin: Difference between revisions
Sinn Erich (talk | contribs) |
Sinn Erich (talk | contribs) |
||
Line 28: | Line 28: | ||
== Rezolvare == | == Rezolvare == | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line> | ||
# | #1961 | ||
import math | |||
def get_input_values(): | |||
n = int(input("Introduceti numarul de zecimale: ")) | |||
sqrt2 = math.sqrt(2) | |||
x = 5 * sqrt2 - 7 | |||
return (n, sqrt2, x) | |||
def calculate_result(x, n): | |||
x_pow_n = pow(x, n) | |||
result = str(x_pow_n)[:n] | |||
return result | |||
def print_result(n, result): | |||
print(f"Primele {n} cifre ale valorii aproximate pentru radicalul de 2 sunt: {result}") | |||
def main(): | |||
n, sqrt2, x = get_input_values() | |||
result = calculate_result(x, n) | |||
print_result(n, result) | |||
# Apelăm funcția principală | |||
main() | |||
</syntaxhighlight> | |||
'''Explicatie cod:''' | |||
Funcția 1: get_input_values() | |||
Această funcție va citi valorile pentru numărul de zecimale, aproximația radicalului de 2 și valoarea lui x. Ea va returna aceste valori sub forma unei liste/tupluri. | |||
Funcția 2: calculate_result(x, n) | |||
Această funcție va calcula valoarea lui x la puterea n și va returna primele n cifre sub forma unui string. | |||
Funcția 3: print_result(n, result) | |||
Această funcție va afișa rezultatul formatat. | |||
Funcția principală: main() | |||
Această funcție va apela celelalte funcții pentru a obține și afișa rezultatul final. |
Revision as of 10:29, 1 April 2023
Sursa: [1]
Cerinţa
Cosmin e pasionat de matematică. Acesta spune despre numărul x că e un număr special și că de acum încolo îl va numi “numărul lui Cosmin”.
Numărul x este un număr real cu proprietatea că:
x=5⋅2–√–7 Profesorul de informatică îi dă ca temă lui Cosmin să creeze un program care citește numărul natural n și afișează pe ecran primele n zecimale ale lui xn, în ordinea în care apar.
Ajutați-l pe Cosmin!
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa pe ecran primele n zecimale ale lui xn, în ordinea în care apar, fără spații.
Restricţii şi precizări
1 ≤ n ≤ 100.000
Exemplul 1
- Intrare
- 1
- Ieșire
- 0
Rezolvare
<syntaxhighlight lang="python" line>
- 1961
import math
def get_input_values():
n = int(input("Introduceti numarul de zecimale: ")) sqrt2 = math.sqrt(2) x = 5 * sqrt2 - 7 return (n, sqrt2, x)
def calculate_result(x, n):
x_pow_n = pow(x, n) result = str(x_pow_n)[:n] return result
def print_result(n, result):
print(f"Primele {n} cifre ale valorii aproximate pentru radicalul de 2 sunt: {result}")
def main():
n, sqrt2, x = get_input_values() result = calculate_result(x, n) print_result(n, result)
- Apelăm funcția principală
main()
</syntaxhighlight>
Explicatie cod:
Funcția 1: get_input_values()
Această funcție va citi valorile pentru numărul de zecimale, aproximația radicalului de 2 și valoarea lui x. Ea va returna aceste valori sub forma unei liste/tupluri.
Funcția 2: calculate_result(x, n) Această funcție va calcula valoarea lui x la puterea n și va returna primele n cifre sub forma unui string.
Funcția 3: print_result(n, result) Această funcție va afișa rezultatul formatat.
Funcția principală: main() Această funcție va apela celelalte funcții pentru a obține și afișa rezultatul final.