3985 - Suma C2
Sursa: [1]
Cerinţa
Se dau n numere naturale. Calculați suma celor care au exact două cifre.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa pe ecran, mesajul "Datele introduse corespund cerințelor" și pe o linie nouă numărul P , reprezentând produsul primelor n pătrate perfecte nenule, în caz contrar programul va afișa pe o linie noua mesajul "Datele introduse nu corespund cerintelor."
Restricţii şi precizări
- 1 ⩽ n ⩽ 1000
- cele n numere citite vor fi mai mici decât 1.000.000.000.
Exemplul 1
- Intrare
- 4
- Ieșire
- Datele corespund cerințelor.
- 576
Exemplul 2
- Intrare
- 16
- Ieșire
- Datele introduse nu corespund cerințelor.
Exemplul 3
- Intrare
- 1001
- Ieșire
- Eroare: Numărul n trebuie să fie între 1 și 1000.
Rezolvare
<syntaxhighlight lang="python" line>
- 3985
def suma_doua_cifre(numere):
S = 0 for num in numere: if len(str(num)) == 2: S += num return S
try:
n = int(input("Introduceți numărul de numere naturale (1 ≤ n ≤ 1000): ")) if not (1 <= n <= 1000): raise ValueError("Numărul n trebuie să fie între 1 și 1000.")
except ValueError as e:
print("Eroare:", e)
else:
numere = [] for i in range(n): try: num = int(input("Introduceți un număr natural mai mic decât 1.000.000.000: ")) if num >= 1000000000: raise ValueError("Numărul trebuie să fie mai mic decât 1.000.000.000.") except ValueError as e: print("Eroare:", e) break else: numere.append(num)
S = suma_doua_cifre(numere) print("Suma numerelor cu două cifre este:", S)
</syntaxhighlight>