Răspuns :
problema e foarte simpla,in comparatie cu cealalta..:))
sunt 2 moduri de rezolvare,cu while si cu for:
cu WHILE:
#include <iostream>
using namespace std;
int main()
{ int n,suma=0;
cout<<"nr=";cin>>n;
while(n)
{ suma=suma+n;
n--;
}
cout<<"suma:"<<suma;
}
cu FOR:
#include <iostream>
using namespace std;
int main()
{ int n,suma=0,i;
cout<<"nr=";cin>>n;
for(i=1;i<=n;i++)
suma=suma+i;
cout<<"suma:"<<suma;
}
sunt 2 moduri de rezolvare,cu while si cu for:
cu WHILE:
#include <iostream>
using namespace std;
int main()
{ int n,suma=0;
cout<<"nr=";cin>>n;
while(n)
{ suma=suma+n;
n--;
}
cout<<"suma:"<<suma;
}
cu FOR:
#include <iostream>
using namespace std;
int main()
{ int n,suma=0,i;
cout<<"nr=";cin>>n;
for(i=1;i<=n;i++)
suma=suma+i;
cout<<"suma:"<<suma;
}
O sa iti prezint o varianta de rezolvare care se bazeaza pe Suma Gauss. Suma de la 1 la n = n * ( n + 1 ) / 2.
Nu ai precizat nimic despre valoarea maxima a lui n. Daca n este destul de mare, aceasta suma o sa depaseasca valoarea maxima a int.
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
cout << n * (n + 1) / 2;
return 0;
}
Nu ai precizat nimic despre valoarea maxima a lui n. Daca n este destul de mare, aceasta suma o sa depaseasca valoarea maxima a int.
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
cout << n * (n + 1) / 2;
return 0;
}