Informatică, întrebare adresată de siffappuro8842, 9 ani în urmă

Se consideră un șir cu n elemente, numere naturale. Folosind metoda Divide et Impera, determinați suma elementelor acestui șir.

Programul citește de la tastatură numărul n, iar apoi cele n elemente ale șirului.

Programul va afișa pe ecran numărul S, reprezentând suma cerută.

Răspunsuri la întrebare

Răspuns de StarBack
1
Salut. Uite aici rezolvarea problemei. Succes in continuare!


#include <iostream>

using namespace std;

int divetimp(int v[], int li, int ls)
{
       int s1, s2;

      if (li == ls)
           return v[li];

     if (li > ls)
     {
           return -1;
     }
     else
     {
            int m = (li + ls) / 2;

            s1 = divetimp(v , li , m);
            s2 = divetimp(v , m + 1, ls);

            return s1 + s2;
      }
}

int main()
{
    int n;
    
    cin >> n;
    
    int *a = new int[n];

    for (int i = 0; i < n; i++)
            cin >> a[i];

    cout<<divetimp(a, 0, n - 1);
}
Alte întrebări interesante