4319 - Cifre 21

De la Universitas MediaWiki

Sursă: [1]

Cerinţa

Se dă un șir cu n elemente, numere naturale. Să se determine câte elemente ale șirului conțin cifra 0.

Date de intrare

Programul va citi de la tastatură numărul n, apoi cele n elemente ale șirului.

Date de ieşire

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele sunt introduse corect.", apoi programul va afişa pe ecran valoarea cerută. În caz contrar, pe ecran se va afișa: "Datele nu au fost introduse corect."

Restricții și precizări

  • n ⩽ 100
  • elementele șirului sunt mai mici decât

Exemplu

Intrare
5
18 205 1470 1256 70
Ieșire
3

Explicație

Elementele șirului care conțin cifra 0 sunt: 205 1470 70.

Rezolvare

def verificare_date(n, sir):
    #Verifică dacă datele de intrare sunt corecte.
    #Returnează:True dacă toate elementele șirului sunt mai mici decât 10^9, False altfel

    for elem in sir:
        if elem >= 10**9:
            return False
    return True


def rezolvare_problema(n, sir):
    cnt = 0
    for elem in sir:
        if '0' in str(elem):
            cnt += 1
    return cnt #returneaza cate elemente ale sirului contin cifra 0


if __name__ == "__main__":
    n = int(input("Introduceti numarul de elemente: "))
    sir = []
    for i in range(n):
        sir.append(int(input(f"Introduceti elementul {i+1}: ")))
    if verificare_date(n, sir):
        print("Datele sunt introduse corect.")
        print("Numarul de elemente ale sirului care contin cifra 0 este:", rezolvare_problema(n, sir))
    else:
        print("Datele nu au fost introduse corect.")