3976 - Prod Impare: Diferență între versiuni

De la Universitas MediaWiki
Fără descriere a modificării
Linia 5: Linia 5:
Programul citește de la tastatură numărul '''n'''.
Programul citește de la tastatură numărul '''n'''.
== Date de iesire ==
== Date de iesire ==
Programul va afișa pe ecran, pe o linie nouă numărul '''P''' și mesajul "Datele introduse corespund cerințelor", reprezentând produsul primelor '''n''' numere impare, în caz contrar programul va afișa pe o linie nouă "Datele introduse nu corespund cerințelor".
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''' numere impare, în caz contrar programul va afișa pe o linie nouă "Datele introduse nu corespund cerințelor".


== Restricţii şi precizări ==
== Restricţii şi precizări ==

Versiunea de la data 18 martie 2023 21:08

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, mesajul "Datele introduse corespund cerințelor" și pe o linie nouă numărul P reprezentând produsul primelor n numere impare, în caz contrar programul va afișa pe o linie nouă "Datele introduse nu corespund cerințelor".

Restricţii şi precizări

  • 1 ⩽ n ⩽ 15

Exemplu

Exemplul 1

Intrare
4
Ieșire
Datele introduse corespund cerințelor.
105

Exemplul 2

Intrare
0
Ieșire
Datele introduse nu corespund cerințelor.

Exemplul 3

Intrare
7
Ieșire
Datele introduse corespund cerințelor.
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)