3807 - Sume Gauss De Sume Gauss: Diferență între versiuni
De la Universitas MediaWiki
(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 va afișa pe ecran, mesajul "Datele introduse corespund cerințelor" și pe o linie nouă numărul '''P''' , reprezentând produsul primelor '''n''' pătrate perfecte nenule, în caz contrar prog...) |
|||
Linia 24: | Linia 24: | ||
: Datele introduse nu corespund cerințelor. | : Datele introduse nu corespund cerințelor. | ||
<br> | <br> | ||
== Rezolvare == | == Rezolvare == | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line> |
Versiunea de la data 19 martie 2023 18:12
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 va afișa pe ecran, mesajul "Datele introduse corespund cerințelor" și pe o linie nouă numărul P , reprezentând produsul primelor n pătrate perfecte nenule, în caz contrar programul va afișa pe o linie noua mesajul "Datele introduse nu corespund cerintelor."
Restricţii şi precizări
- 0 < n ⩽ 10
Exemplul 1
- Intrare
- 4
- Ieșire
- Datele corespund cerințelor.
- 576
Exemplul 2
- Intrare
- 16
- Ieșire
- Datele introduse nu corespund cerințelor.
Rezolvare
#3807
def partial_sum(x):
current_sum = 0
for j in range(1, x+1):
current_sum += j
return current_sum
def total_sum(x):
sum = 0
for j in range(1, x+1):
sum += partial_sum(j)
return sum
def validate_n(n):
if not 1 <= n <= 1000000:
print("Numarul de teste trebuie sa fie intre 1 si 1000000")
raise ValueError
def validate_x(x):
if x >= 4000000:
print("Numarul introdus trebuie sa fie mai mic decat 4000000")
raise ValueError
if __name__ == "__main__":
n = int(input("Introduceti numarul de teste: "))
validate_n(n)
for i in range(n):
x = int(input(f"Introduceti valoarea {i+1}: "))
validate_x(x)
print(total_sum(x))