0053 - Cate Impare: Difference between revisions
Paul Ungur (talk | contribs) No edit summary |
Paul Ungur (talk | contribs) No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 6: | Line 6: | ||
==Date de ieşire== | ==Date de ieşire== | ||
Dacă datele sunt introduse corect, pe ecran se va afișa: '''"Date de intrare valide."''', apoi programul afișează pe ecran numărul '''C''', reprezentând numărul de numere impare citite. În cazul în care datele nu respectă restricțiile, se va afișa pe ecran: '''"Date de intrare invalide".''' | |||
==Restricţii şi precizări== | ==Restricţii şi precizări== | ||
Line 13: | Line 14: | ||
==Exemplu:== | ==Exemplu:== | ||
Intrare | Intrare | ||
5 6 2 1 0 | : 5 6 2 1 0 | ||
Ieșire | Ieșire | ||
2 | : Date de intrare valide | ||
: 2 | |||
==Rezolvare== | ==Rezolvare== | ||
Line 43: | Line 45: | ||
print("Date de intrare invalide") | print("Date de intrare invalide") | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==Explicatie cod:== | |||
Funcția validare_date(numere) primește o listă de numere și verifică dacă fiecare număr din listă se încadrează în intervalul specificat [0, 1_000_000_000]. 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 cate_impare(numere) primește o listă de numere și numără câte dintre acestea sunt impare. Se verifică fiecare număr din listă, iar dacă numărul este impar (adică are restul împărțirii la 2 diferit de zero), se incrementează un contor. La final, se afișează numărul de numere impare găsite. | |||
Î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 cate_impare() pentru a număra numerele impare. În caz contrar, se afișează un mesaj de eroare. |
Latest revision as of 18:54, 29 June 2023
Cerinţa[edit | edit source]
Se citesc numere de la tastatură până la apariția lui zero. Să se determine câte dintre ele erau impare.
Date de intrare[edit | edit source]
Programul citește de la tastatură numere naturale. Citirea se încheie la introducerea valorii 0.
Date de ieşire[edit | edit source]
Dacă datele sunt introduse corect, pe ecran se va afișa: "Date de intrare valide.", apoi programul afișează pe ecran numărul C, reprezentând numărul de numere impare citite. În cazul în care datele nu respectă restricțiile, se va afișa pe ecran: "Date de intrare invalide".
Restricţii şi precizări[edit | edit source]
numerele citite aparțin intervalului [0; 1.000.000.000)
Exemplu:[edit | edit source]
Intrare
- 5 6 2 1 0
Ieșire
- Date de intrare valide
- 2
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line> def validare_date(numere):
for numar in numere: if numar < 0 or numar > 1_000_000_000: return False return True
def cate_impare(numere):
numere_impare = 0 for numar in numere: if numar % 2 == 1: numere_impare += 1 print(numere_impare)
if __name__ == '__main__':
numere = list(map(int, input().split())) if validare_date(numere): print("Date de intrare valide") cate_impare(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 [0, 1_000_000_000]. 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 cate_impare(numere) primește o listă de numere și numără câte dintre acestea sunt impare. Se verifică fiecare număr din listă, iar dacă numărul este impar (adică are restul împărțirii la 2 diferit de zero), se incrementează un contor. La final, se afișează numărul de numere impare găsite. Î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 cate_impare() pentru a număra numerele impare. În caz contrar, se afișează un mesaj de eroare.