imi puteti explica pas cu pas problema aceasta? multumesc anticipat
Răspunsuri la întrebare
Răspuns:
25
Explicație:
Prima oara, din main() se face apelul la test(tab,1,1).
Deoarece tab(1,1) nu are valoarea nula, o adauga la x
x = 0 + 8
Deoarece i - 1>=0 este adevarata, face apelul la test(tab, 0, 1). test(tab,0,1) adauga 7 la x:
x = 8 + 7 = 15
Face apelul la test(tab,1,1). deoarece tab[1][1] = 0, se intoarce la apelul test(tab,0,1) si face apelul la test(tab,0,0);
x = 15 + 1 = 16.
test(tab,0,0) nu mai poate face niciun apel, deci se intoarce la apelul initial test(tab,1,1).
test(tab,1,1) face apelul la test(tab,2,1) tab[2][1] este nul si nu intra in conditie.
Se intoarce iar la apelul initial test(tab,1,1), care face apelul test(tab,1,0)(nenul):
x = 16 + 2 = 18.
test(tab,1,0) apeleaza test(tab,1,0) (care e nul), se intoarce, apeleaza test(tab,2,0):
x = 18 + 3 = 21
Apelul test(tab,2,0) apeleaza test(tab,1,0) (nul, se intoarce) si test(tab,3,0):
x = 21 + 4 = 25
Apoi toate apelurile care se mai fac au elemente nule in matrice, pana cand se ajunge inapoi in main, care afiseaza valoarea 25.