3976 - Prod Impare: Diferență între versiuni
De la Universitas MediaWiki
(Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/3976/prodimpare] == Cerinţa == Se dă numărul natural nenul '''n'''. Să se determine produsul primelor '''n''' numere impare. == Date de intrare == Programul citește de la tastatură numărul '''n'''. == Date de iesire == Programul va afișa pe ecran numărul '''P''', reprezentând produsul primelor '''n''' numere impare, în caz contrar programul va afișa "Datele introduse nu corespund cerințelor". == Restricţii şi precizări ==...) |
|||
Linia 26: | Linia 26: | ||
=== Rezolvare === | === Rezolvare === | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line> | ||
#3976 | #3976 | ||
def validare_numar_intreg_pozitiv(mesaj): | def validare_numar_intreg_pozitiv(mesaj): | ||
Linia 54: | Linia 53: | ||
n = validare_numar_intreg_pozitiv("Introduceti un numar natural nenul: ") | n = validare_numar_intreg_pozitiv("Introduceti un numar natural nenul: ") | ||
produs = produs_primelor_n_numere_impare(n) | produs = produs_primelor_n_numere_impare(n) | ||
print("Datele introduse corespund cerintelor.") | |||
print("Produsul primelor", n, "numere impare este:", produs) | print("Produsul primelor", n, "numere impare este:", produs) | ||
</syntaxhighlight> | </syntaxhighlight> |
Versiunea de la data 18 martie 2023 20:20
Sursa: [1]
Cerinţa
Se dă numărul natural nenul n. Să se determine produsul primelor n numere impare.
Date de intrare
Programul citește de la tastatură numărul n.
Date de iesire
Programul va afișa pe ecran numărul P, reprezentând produsul primelor n numere impare, în caz contrar programul va afișa "Datele introduse nu corespund cerințelor".
Restricţii şi precizări
- 1 ⩽ n ⩽ 15
Exemplu
Exemplul 1
- Intrare
- 4
- Ieșire
- 105
Exemplul 2
- Intrare
- 0
- Ieșire
- Datele introduse nu corespund cerințelor.
Exemplul 3
- Intrare
- 7
- Ieșire
- 135135
Rezolvare
#3976
def validare_numar_intreg_pozitiv(mesaj):
while True:
try:
numar = int(input(mesaj))
if numar <= 0:
print("Datele introduse nu corespund cerintelor.")
elif numar > 15:
print("Datele introduse nu corespund cerintelor.")
else:
return numar
except ValueError:
print("Introduceti un numar intreg pozitiv.")
def produs_primelor_n_numere_impare(n):
produs = 1
for i in range(1, 2*n, 2):
produs *= i
return produs
if __name__ == '__main__':
n = validare_numar_intreg_pozitiv("Introduceti un numar natural nenul: ")
produs = produs_primelor_n_numere_impare(n)
print("Datele introduse corespund cerintelor.")
print("Produsul primelor", n, "numere impare este:", produs)