Informatică, întrebare adresată de danamocanu71, 8 ani în urmă

Se citeste n numar natural. Calculati suma tuturor numerelor naturale mai mici sau egale cu n.


JolieJulie: in c++?
danamocanu71: Da

Răspunsuri la întrebare

Răspuns de JolieJulie
17
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;
}




danamocanu71: Multumesc frumos
JolieJulie: cu drag:)
danamocanu71: Ai putea sa le rezolvi si pe celelalte
JolieJulie: incerc...sa vad ce pot face...
danamocanu71: OK
Răspuns de rossetta
10
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;
}
Alte întrebări interesante