Răspuns :
Salut. Ți-am lăsat mai jos rezolvarea problemei. Succes!
Răspuns:
static int Suma(char[] sir)
{
int s = 0;
for (int i = 0; i < sir.Length; i++)
{
if(sir[i] >= '0' && sir[i] <= '9')
{
int nr = sir[i] - '0';
s += nr;
}
}
return s;
}
Explicație:
Mai întâi am inițializat variabila „s” cu zero pentru a memora suma cifrelor din șir. Apoi am parcurs șirul de caractere, dacă caracterul aflat la poziția „i” este cuprins între valorile specifice din tabelul ASCII al caracterului „0” (48), respectiv caracterul „9” (57). Am obținut numărul convertit în întreg prin diferența caracterului din șir cu „0” (48). Apoi am adunat la sumă numărul obținut. La sfârșit am returnat rezultatul.
Exemplu:
Dacă am găsit caracterul „1” (49) în șir, valoarea diferenței va fii 49 - 48, adică 1, ceea ce este corect.
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.