Știe cineva cum se face aceasta problema? Va rog! E urgent!!
cu un for i de la 1 la n citeşti repetat număr şi faci paralel şi suma
după ieşirea din ciclu afişezi suma
Răspunsuri la întrebare
Algoritmul este unul destul de usor. Il poti face in doua moduri..
- Fie citesti toate elementele si le pui in vector dupa care parcurgi vectorul si faci suma elementelor..
- Fie in timp ce citesti elementele vectorului realizezi si suma acestora.
Am ales sa iti prezint a doua varianta care este mai eficienta din punct de vedere al timpului de rulare al programului.
Adica nu fac doua parcurgeri cum ar fi prima varianta.. ci realizez din prima parcurgere suma.
Răspuns:
#include <iostream>
using namespace std;
int main()
{
int suma=0, i, a[100], n;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>a[i];
suma=suma+a[i];
}
cout<<suma;
}
Explicație:
Citim cate elemente vrem sa citim.
Apoi, cele n elemente le vom pune intr-un vector.
In timp ce citim fiecare element vom aduna fiecare element nou citit cu suma elementelor anterioare.
De ex:
Citim 5 elemente; n=5
Elementele vor fi: 5 10 15 20 25
Sa parcurgem programul creat pas cu pas.
n=5
pentru i=1, 1<=5 execut
citesc elementul 5, iar in vector, pe prima pozitie, voi avea elementul 5 (a[1]=5)
Cum variabila S are inca valoarea 0 atunci S=S+a[1] => S=0+5= => S=5
repet structura pentru crescand valoarea lui i cu o unitate
pentru i=2, 2<=5 execut
citesc elementul 10, iar in vector, pe pozitia a doua, voi avea elementul 10 ( a[2]=10)
In pasul anterior S a avut valoarea 5, prin urmare variabila S va fi egala cu suma anterioara + elementul de pe pozitia a doua. => S=S+a[2]=> S=5+10 => S=15
repet structura pentru crescand valoarea lui i cu o unitate
pentru i=3, 3<=5 execut
citesc elementul 15, iar in vector, pe pozitia a treia, voi avea elementul 15 ( a[3]=15 )
In pasul anterior S avea valoarea 15, prin urmare variabila S va fi egala cu suma anterioara + elementul de pe pozitia a treia. => S=S+a[3] => S=15+15 => S=30
repet structura pentru crescand valoarea lui i cu o unitate
.... Si tot asa pentru i=4, si i=5
Asadar, urmand pasii descrisi mai sus, vei constata ca variabila suma realizeaza exact suma celor n numere exact in timp ce le si citim.
Prin urmare, in urma acestor pasi, variabila S, urmarind strinct exemplul dat de mine anterior cu cele 5 elemente, va avea valoarea 75 ( 5+10+15+20+25 )
Sincer sa fiu nu prea stiu programa din gimnaziu pentru informatica, asa ca nu stiu ce stie si ce nu.
Daca chiar e clasa a 7... Programul scris de tine este cel mai rentabil. Dar daca intelege care e diferenta intre al meu si al tau... atunci m-as bucura mult☻
Răspuns:
#include <iostream>
using namespace std;
int main()
{
int n,a,s=0;
cin>>n;
for (int i=1;i<=n;++i){
cin>>a;
s+=a;
}
cout<<s;
return 0;
}
Explicație:
am realizat sfaturile pe care ţi le am propus mai sus în comentarii
încearcă să relizezi singur, după următoarele sfaturi: