4319 - Cifre 21: Diferență între versiuni
De la Universitas MediaWiki
Fără descriere a modificării |
Fără descriere a modificării |
||
Linia 2: | Linia 2: | ||
== Cerinţa == | == Cerinţa == | ||
Se dă un șir cu ''' | Se dă un șir cu '''n''' elemente, numere naturale. Să se determine câte elemente ale șirului conțin cifra 0. | ||
== Date de intrare == | == Date de intrare == | ||
Programul va citi de la tastatură numărul ''' | Programul va citi de la tastatură numărul '''n''', apoi cele '''n''' elemente ale șirului. | ||
== Date de ieşire == | == 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 == | == Restricții și precizări == | ||
* '''numere''' ⩽ 100 | * '''numere''' ⩽ 100 | ||
* elementele șirului sunt mai mici decât 10^9 | * elementele șirului sunt mai mici decât <math>10^{9}</math> | ||
== Exemplu == | == Exemplu == | ||
; Intrare | ; Intrare | ||
Linia 19: | Linia 20: | ||
Elementele șirului care conțin cifra 0 sunt: 205 1470 70. | Elementele șirului care conțin cifra 0 sunt: 205 1470 70. | ||
== Rezolvare == | == Rezolvare == | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line> | ||
def verificare_date(n, sir): | |||
sir = [] | #Verifică dacă datele de intrare sunt corecte. | ||
for i in range( | #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): | |||
#Rezolvă problema și calculează numărul de elemente ale șirului care conțin cifra 0. | |||
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.") | |||
</syntaxhighlight> | </syntaxhighlight> |
Versiunea de la data 26 aprilie 2023 17:58
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
- numere ⩽ 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):
#Rezolvă problema și calculează numărul de elemente ale șirului care conțin cifra 0.
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.")