3664 - Cif Par Cif Imp: Diferență între versiuni
De la Universitas MediaWiki
Fără descriere a modificării |
|||
Linia 8: | Linia 8: | ||
== Date de ieşire == | == Date de ieşire == | ||
Dacă datele sunt introduse corect, pe ecran se va afișa: " Datele de intrare corespund restrictiilor impuse", apoi pe un rand nou va afișa valoarea cerută. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse. | |||
Datele de | |||
== Restricții și precizări == | == Restricții și precizări == |
Versiunea de la data 26 martie 2023 15:23
Sursă: [1]
Cerinţa
Se dau n numere naturale. Determinaţi câte cifre pare şi câte cifre impare se află în total în cele n numere.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spații.
Date de ieşire
Dacă datele sunt introduse corect, pe ecran se va afișa: " Datele de intrare corespund restrictiilor impuse", apoi pe un rand nou va afișa valoarea cerută. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse.
Restricții și precizări
- 1 ⩽ n ⩽ 10
- cele n numere citite vor fi mai mici decât 1.000.000.000.
Exemplul 1
- Intrare
- Introduceți numărul de numere: 3
- Introduceți numărul 1: 11
- Introduceți numărul 2: 30
- Introduceți numărul 3: 3
- Ieșire
- 1 4
Exemplul 2
- Intrare
- Introduceți numărul de numere: 0
- Iesire
- Numărul de numere trebuie să fie între 1 și 10.
Rezolvare
#3664
def validate_input(n):
if not 1 <= n <= 10:
print("Numărul de numere trebuie să fie între 1 și 10.")
return False
return True
def count_parity_digits(n):
pare = 0
impare = 0
while n > 0:
cifra = n % 10
if cifra % 2 == 0:
pare += 1
else:
impare += 1
n //= 10
return pare, impare
if __name__ == '__main__':
numere = int(input("Introduceți numărul de numere: "))
if not validate_input(numere):
exit()
pare_total = 0
impare_total = 0
for i in range(numere):
n = int(input(f"Introduceți numărul {i + 1}: "))
if n >= 1000000000:
print("Numărul introdus este prea mare.")
continue
pare, impare = count_parity_digits(n)
pare_total += pare
impare_total += impare
print(f"{pare_total} {impare_total}")