4273 - Prod PP: Difference between revisions
Dragos1234 (talk | contribs) Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/4273/prodpp] == Cerinţa == Se dă numărul natural nenul '''n'''. Să se determine produsul primelor '''n''' pătrate perfecte nenule. == Date de intrare == Programul citește de la tastatură numărul '''n'''. == Date de ieșire == Programul afișează pe ecran mesajul Rezultatul este '''S''', unde '''S''' reprezintă valoarea calculată, în caz contrar acest program va afișa "Datele introduse nu corespund cerințelor". == Restric... |
Dragos1234 (talk | contribs) |
||
Line 30: | Line 30: | ||
== Rezolvare == | == Rezolvare == | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line> | ||
# | #4273 | ||
def | import math | ||
def patrate_perfecte(n): | |||
patrate = [] | |||
i = 1 | |||
return | while len(patrate) < n: | ||
patrat = i * i | |||
patrate.append(patrat) | |||
i += 1 | |||
return patrate | |||
def | def calculeaza(numbers): | ||
if n < | product = 1 | ||
for number in numbers: | |||
product *= number | |||
print(product) | |||
def validare_numar(n): | |||
if n < 1 or n > 10: | |||
print("Datele introduse nu corespund cerintelor.") | print("Datele introduse nu corespund cerintelor.") | ||
if __name__ == '__main__': | if __name__ == '__main__': | ||
n = int(input("Introduceți numărul n: ")) | n = int(input("Introduceți numărul n: ")) | ||
validare_numar(n) | |||
squares = patrate_perfecte(n) | |||
product = calculeaza(squares) | |||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 13:34, 18 March 2023
Sursa: [1]
Cerinţa
Se dă numărul natural nenul n. Să se determine produsul primelor n pătrate perfecte nenule.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul afișează pe ecran mesajul Rezultatul este S, unde S reprezintă valoarea calculată, în caz contrar acest program va afișa "Datele introduse nu corespund cerințelor".
Restricţii şi precizări
- 0 ⩽ n ⩽ 10
Exemplul 1
- Intrare
- 4
- Ieșire
- 576
Exemplul 2
- Intrare
- 0
- Ieșire
- Datele introduse nu corespund cerințelor.
Exemplul 3
- Intrare
- 42
- Ieșire
- Rezultatul este 13244
Rezolvare
<syntaxhighlight lang="python" line>
- 4273
import math def patrate_perfecte(n):
patrate = [] i = 1 while len(patrate) < n: patrat = i * i patrate.append(patrat) i += 1 return patrate
def calculeaza(numbers):
product = 1 for number in numbers: product *= number print(product)
def validare_numar(n):
if n < 1 or n > 10: print("Datele introduse nu corespund cerintelor.")
if __name__ == '__main__':
n = int(input("Introduceți numărul n: ")) validare_numar(n) squares = patrate_perfecte(n) product = calculeaza(squares)
</syntaxhighlight>