2730 - SC
Cerința
Scrieți funcția recursivă având următorul antet: int SC(char s[]) Funcția primește ca parametru un șir de caractere și returnează suma tuturor cifrelor care apar în șir.
Date de intrare
Se va introduce de la tastatură un sir de caractere
Date de ieșire
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse." În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse.".
Restricții și precizări
1 ≤ lungimea șirului ≤ 200 Dacă șirul nu conține cifre, funcția trebuie să returneze valoarea 0. Se recomandă utilizarea recursivității pentru rezolvarea acestei probleme.
Exemplu
SC("Ana are 15 mere si 185 de pere.") va returna valoarea 20.
Rezolvare
def SC(s): if len(s) == 0: return 0 elif s[0].isdigit(): return int(s[0]) + SC(s[1:]) else: return SC(s[1:]) s = input("Introduceti sirul de caractere: ") if all(c.isalpha() or c.isspace() for c in s): print("Datele de intrare corespund restrictiilor impuse.") print("Suma cifrelor din sir este: ", SC(s)) else: print("Datele de intrare nu corespund restrictiilor impuse.")