Informatică, întrebare adresată de georgipetruta416, 8 ani în urmă

27. Se consideră subalgoritmul f2(a,b) cu parametrii a și b numere naturale, și subalgoritmul f(arr,
i, n, p) având ca parametri șirul arr cu n numere întregi (arr[1], arr[2], …, arr[n]), și numerele întregi
i și p. Subalgoritm f2(a, b):
Dacă a > b atunci
returnează a
altfel
returnează b
SfDacă
SfSubalgoritm
Subalgoritm f(arr, i, n, p):
Dacă i = n atunci
returnează 0
SfDacă
n1 ← f(arr, i + 1, n, p)
n2 ← 0
Dacă p + 1 ≠ i atunci
n2 ← f(arr, i + 1, n, i) + arr[i]
SfDacă
returnează f2(n1, n2)
SfSubalgoritm
Precizați care este rezultatul apelului f(arr, 1, 9, -10), dacă șirul arr conține valorile (10, 1, 3, 4,
8, 12, 1, 11, 6). Stie cineva sa rezolve problema asta?.

Răspunsuri la întrebare

Răspuns de MihaiBiv
2

Răspuns:

37

Explicație:

numerele de pe pozitii pare o sa fie comparate cu cele pe pozitii impare

spre exemplu arr[8] se compara cu arr[7] => 11>1

sau arr[1] cu arr[2] => 10>1

dupa ce acestea se compara si se verifica care este mai mare, se adauga la suma finala.

in final va ramane sa se calculeze 10+4+12+11 =37

(sunt 87 de calcule)

Anexe:
Alte întrebări interesante