Răspuns :
Ideea ar fi să ai o funcție recursivă care primește ca parametrii un sir și un interval, și returnează suma elementelor din acel interval.
Îți scriu mai jos un program în C++. Baftă!
# include <iostream>
using namespace std;
int suma( int v[], int b, int e ) {
if ( e - b == 0 )
return v[b];
else
return suma( v, b, ( b + e ) / 2 ) + suma( v, ( b + e ) / 2 + 1, e );
}
int main() {
int n, i;
cin >> n;
int v[n];
for ( i = 0; i < n; i ++ )
cin >> v[i];
cout << suma( v, 0, n - 1 );
return 0;
}
Îți scriu mai jos un program în C++. Baftă!
# include <iostream>
using namespace std;
int suma( int v[], int b, int e ) {
if ( e - b == 0 )
return v[b];
else
return suma( v, b, ( b + e ) / 2 ) + suma( v, ( b + e ) / 2 + 1, e );
}
int main() {
int n, i;
cin >> n;
int v[n];
for ( i = 0; i < n; i ++ )
cin >> v[i];
cout << suma( v, 0, n - 1 );
return 0;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Ne dorim ca informațiile furnizate să vă fi fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Revenirea dumneavoastră ne bucură, iar pentru acces rapid, adăugați-ne la favorite!