ďťż

Ładny brzuch

Witam, co tutaj jest źle? Program ma działać w ten sposób, że ma sumować liczby parzyste. Ja podaje ilość liczb, które chce zsumować i liczby do zsumowania (sumować ma tylko parzyste, nieparzyste pomijać).

Czyli ja deklaruje, że chce podać 5 liczb;
Podaje 1,2,7,3,4
Sumowane są tylko parzyste 2+4=6

#include <cstdlib> #include <iostream> using namespace std; int main() { int a; int b; int suma; cout<<"Podaj ilosc liczb ktore chcesz zsumowac"; cin>>a; for (int i=0; i<a; i++) { cout<<"Podaj liczbe"; cin>>b; } suma=0; if (b%=2) { suma=suma+b; cout<<"Suma podanych liczb wynosi"; cout<<suma; } else cout<<"Liczba nie jest parzysta"; system("PAUSE"); return EXIT_SUCCESS; }



#include <cstdlib> #include <iostream> using namespace std; int main() { int a; int b; int suma=0; cout<<"Podaj ilosc liczb ktore chcesz zsumowac "; cin>>a; for (int i=0; i<a; i++) { cout<<"Podaj liczbe "; cin>>b; if(b%2==0) suma+=b; } cout<<"Suma podanych liczb wynosi "; cout<<suma; cout << endl << endl; system("PAUSE"); return EXIT_SUCCESS; }
Moim zdaniem to powinno wyglądać tak :) mam nadzieję, że zapis programu jest zrozumiały :)

Thx :)
A o co chodzi z tym fragmentem?
if(b%2==0)
Dokładnie ==0 co to oznacza i skąd się wzięło?

% to reszta z dzielenia:

1 % 2 = 1
2 % 2 = 0
3 % 2 = 1
4 % 2 = 0

itd.

== to operator porównania. Jeżeli prawa strona jest taka sama jak lewa, to instrukcje w "if" wykonują się.

W tym przypadku instrukcje w "if" wykonają się, jeżeli "b" jest liczbą parzystą.
Użytkownik Kozack edytował ten post 20 grudzień 2009, 09:34
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •