0052 - Suma Pare 1

From Bitnami MediaWiki
Revision as of 18:42, 29 June 2023 by Paul Ungur (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerinţa[edit | edit source]

Se citesc numere de la tastatură până la apariția lui zero. Să se determine suma celor pare.

Date de intrare[edit | edit source]

Programul citește de la tastatură numere întregi. Citirea se încheie la introducerea valorii 0.

Date de ieşire[edit | edit source]

Programul afișează pe ecran numărul S, reprezentând suma numerelor pare. Dacă datele sunt introduse corect, pe ecran se va afișa: "Date de intrare valide"

În caz contrar, se va afișa pe ecran: "Date de intrare invalide."

Restricţii şi precizări[edit | edit source]

numerele citite aparține intervalului (-1.000.000; 1.000.000) valoarea absolută a sumei nu va depăși 1.000.000.000

Exemplu:[edit | edit source]

Intrare

5 6 2 1 0

Ieșire

Datele de intrare valide.
8


Rezolvare[edit | edit source]

<syntaxhighlight lang="python" line> def validare_date(numere):

   for numar in numere:
       if numar < -1000000 or numar > 1000000:
           return False
   return True


def suma_numerelor_pare(numere):

   suma = 0
   for numar in numere:
       if numar % 2 == 0:
           suma += numar
   print(suma)


if __name__ == '__main__':

   numere = list(map(int, input().split()))
   if validare_date(numere):
       print("Date de intrare valide")
       suma_numerelor_pare(numere)
   else:
       print("Date de intrare invalide")

</syntaxhighlight>

Explicatie cod:[edit | edit source]

Funcția validare_date(numere) primește o listă de numere și verifică dacă fiecare număr din listă se încadrează în intervalul specificat [-1000000, 1000000]. Dacă există cel puțin un număr care nu respectă această condiție, funcția returnează False. În caz contrar, returnează True. Funcția suma_numerelor_pare(numere) primește o listă de numere și calculează suma numerelor pare din acea listă. Se verifică fiecare număr din listă, iar dacă numărul este par (adică împărțit exact la 2), se adaugă la suma totală. La final, suma este afișată. În blocul if __name__ == '__main__':, se citește de la intrare o serie de numere separate prin spațiu utilizând funcția input() și split(), și se stochează într-o listă numită numere. Apoi, se verifică dacă valorile citite sunt valide utilizând funcția validare_date(). Dacă valorile sunt valide, se afișează un mesaj de confirmare și se apelează funcția suma_numerelor_pare() pentru a calcula suma numerelor pare. În caz contrar, se afișează un mesaj de eroare.