4272 - Prod Pare: Difference between revisions

From Bitnami MediaWiki
Dragos1234 (talk | contribs)
Tag: visualeditor
 
(One intermediate revision by the same user not shown)
Line 5: Line 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 ==
Dacă datele sunt introduse corect, în consolă se va afișa mesajul "Datele introduse corespund cerintelor." și pe rând nou se va afișa  produsul rezultat din inmultirea primelor '''n''' numere pare. În caz contrar, se va afișa pe ecran: "Datele introduse nu corespund.".
Dacă datele sunt introduse corect, în consolă se va afișa mesajul "Datele introduse corespund cerintelor." și pe rând nou se va afișa  produsul rezultat din inmultirea primelor '''n''' numere pare. În caz contrar, se va afișa pe ecran: "Datele introduse nu corespund cerintelor.".


== Restricţii şi precizări ==
== Restricţii şi precizări ==
Line 22: Line 22:
: 11
: 11
; Ieșire
; Ieșire
: Datele nu corespund cerintelor.
: Datele introduse nu corespund cerintelor.


=== Rezolvare ===
=== Rezolvare ===

Latest revision as of 17:56, 14 May 2023

Sursa: [1]

Cerinţa[edit]

Se dă numărul natural nenul n. Să se determine produsul primelor n numere pare nenule.

Date de intrare[edit]

Programul citește de la tastatură numărul n.

Date de iesire[edit]

Dacă datele sunt introduse corect, în consolă se va afișa mesajul "Datele introduse corespund cerintelor." și pe rând nou se va afișa produsul rezultat din inmultirea primelor n numere pare. În caz contrar, se va afișa pe ecran: "Datele introduse nu corespund cerintelor.".

Restricţii şi precizări[edit]

  • 1 ⩽ n ⩽ 10

Exemplu[edit]

Exemplul 1[edit]

Intrare
4
Ieșire
Datele introduse corespund cerintelor.
384

Exemplul 2[edit]

Intrare
11
Ieșire
Datele introduse nu corespund cerintelor.

Rezolvare[edit]

<syntaxhighlight lang="python" line>

  1. 4272

def produs_numere_pare(n):

   produs = 1
   for i in range(2, 2 * n + 1, 2):
       produs *= i
   print(produs)


def validare_numar(n):

   if n < 1 or n > 10:
       print("Datele introduse nu corespund cerintelor.")
       return False
   return True


if __name__ == "__main__":

   numar = int(input("Introduceți un număr: "))
   if validare_numar(numar):
       print("Datele introduse corespund cerintelor.")
       produs_numere_pare(numar)


</syntaxhighlight>

Explicatie rezolvare[edit]

Acest program calculează produsul numerelor pare de la 2 la 2n, unde n este un număr întreg introdus de utilizator.

Funcția validare_numar(n) verifică dacă numărul introdus de utilizator respectă cerințele, adică să fie între 1 și 10 inclusiv. Dacă numărul nu respectă aceste cerințe, funcția va afișa un mesaj de eroare și va returna False. Dacă numărul este valid, funcția va returna True.

Funcția produs_numere_pare(n) calculează produsul numerelor pare de la 2 la 2n, prin intermediul unui ciclu for. Ciclul pornește de la 2 și se oprește la 2n inclusiv, în pași de 2. La fiecare iterație, valoarea curentă a produsului este înmulțită cu valoarea curentă a variabilei i.

În if __name__ == "__main__": se verifică dacă programul rulează ca script (adică nu a fost importat ca modul). Utilizatorul este invitat să introducă un număr întreg. Dacă numărul respectă cerințele, se afișează un mesaj de confirmare și se calculează produsul numerelor pare de la 2 la 2n prin apelul funcției produs_numere_pare(n).