Informatică, întrebare adresată de Utilizator anonim, 9 ani în urmă

Să se scrie un program care citește numărul natural n și determină suma S=2+4+..+(2n).

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieşire
Programul afișează pe prima linie a ecranului mesajul Suma este S, unde S reprezintă suma calculată.

Restricţii şi precizări
0 < n ≤ 10000

Răspunsuri la întrebare

Răspuns de Qubicon
31
#include <iostream>
using namespace std;
int main()
{ int n,i,S=0;
cout<<"n="; cin>>n;
for (i=1; i<=n; i++)
S=S+2*i;
cout<<"S="<<S;
return 0;
}

Qubicon: Lozanalex ar fi meritat "Cel mai inteligent raspuns" intrucat programul sau este mai rapid.
Răspuns de lozanalex
43
#include <iostream>

using namespace std;

int main()
{
    int n,s;
    cin >> n;
    s=n*(n+1);
    cout << "Suma este " << s ;
    return 0;
}

//Posibil sunt intrebari de unde am obtinut formula s=n*(n+1)
//Explicatie:
//s= 2+4+6+...2*(n-1)+2*n
//scoatem 2 in fata parantezei
//s= 2*(1+2+3+...+(n-1)+n)
//din matematica stim ca:
// 1+2+3+...+(n-1)+n=(n+1)*n/2
// se demonstreaza cu inductia matematica
// din ultimele 2 formule obtinem
//s=2*n*(n+1)/2=n*(n+1)

Qubicon: Oh, nu m-am gandit la asta. Btw, puteai folosi /* si */
Alte întrebări interesante