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 pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Nu ezitați să ne contactați pentru orice întrebare sau dacă aveți nevoie de asistență suplimentară. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!