# PBinfo #1843 – FSumVecRec – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: deivid

## Enunț

Cerinţa
Scrieţi definiția completă a subprogramului recursiv suma, care primeşte prin cei 4 parametri
v, n, i, j: 


v, un tablou unidimensional cu maximum 100 de elemente întregi din intervalul [-1000,1000]
n, un număr natural reprezentând numărul de elemente din tabloul v
i și j două valori naturale cu 1≤i≤j≤n

Subprogramul returnează suma elementelor v[1], v[2], … , v[i-1], v[j+1], … , v[n].

Restricţii şi precizări

0 < n ≤ 100
numele subprogramului cerut este suma
parametrii sunt, în această ordine: v, n, i, j
indicii elementelor vectorului v sunt 1, 2 ,… , n
se recomandă realizarea unei soluții recursive

Exemplu:
Dacă n=6, x= (12, 7, 6, 3, 8, 5), i=2, și j=4, rezultatul va fi 25.

Important
Soluţia propusă va conţine doar definiţia subprogramului cerut. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.

## Cod sursă C++

```cpp
int suma(int *v, int n, int i, int j)
{
	if(n == 0)
      	return 0;
  	else
      	if(n <i || n > j)
      		return v[n] + suma(v, n-1, i,j);
      	else
      		return suma(v, n-1, i,j);
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/1843)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/1843/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-1843/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
