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

Se dă un şir format din n numere naturale distincte. Calculați suma elementelor din secvenţa ce uneşte cel mai mic şi cel mai mare element din şir.


MariaJD: nu merge ceva bine

Răspunsuri la întrebare

Răspuns de passbrain123
2
#include <iostream>
using namespace std;
int main(){    int n, imax, imin, emin, emax;    int vect[100];    cin>>n;    for (int i=1; i<=n; i++)        cin>>vect[i];    imax = imin = 1;    emin = emax = vect[1];    for (int i=2; i<=n; i++) {        if (vect[i]<emin) {            emin = vect[i];            imin = i;        }        if (vect[i]> emax) {            emax = vect[i];            imax = i;        }    }    int sum = 0;    if (imax < imin )        for (int i=imax; i<=imin; i++)            sum+=vect[i];    else        for (int i=imin; i<=imax; i++)            sum+=vect[i];    cout<<sum;    return 0;}
Anexe:
Alte întrebări interesante