[C] Objaśnienie fragmentu kodu

Tomix91
Użytkownik
Użytkownik
Posty: 175
Rejestracja: 8 sty 2009, o 19:12
Płeć: Mężczyzna
Lokalizacja: Stalowa Wola
Podziękował: 26 razy
Pomógł: 12 razy

[C] Objaśnienie fragmentu kodu

Post autor: Tomix91 »

Witam ! Mam prośbę mógłby mi ktoś wytłumaczyć ten zapis :

Kod: Zaznacz cały

 for(a=1,b=2;b<=6;b+=2) 
a += (b++ > 2) && (++a > 1);
dokładnie to chodzi mi o drugą linijkę nie wiem czym się różnią plusy przed i za zmienną i ten znak większości co on daję i dlaczego jest taki wynik a=3 b=8.
Z góry dziękuje
Ostatnio zmieniony 6 lut 2012, o 22:44 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
mikkuexc
Użytkownik
Użytkownik
Posty: 65
Rejestracja: 19 maja 2011, o 20:33
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 1 raz
Pomógł: 5 razy

[C] Objaśnienie fragmentu kodu

Post autor: mikkuexc »

-- 6 lut 2012, o 21:48 --

Kod: Zaznacz cały

a += (b++ > 2) && (++a > 1);
Np.

Kod: Zaznacz cały

a+=a; // jest równe a=a+a;
&& // znaczy (pierwsze wyrazenie) i (drugie wyrazenie)

Kod: Zaznacz cały

a++ // najpierw zwraca zmienną a, a następnie dodaje do niej 1
++a // najpierw dodaje 1 a potem zwraca zwiększoną wartość a
Czyli w takim przypadku:

Kod: Zaznacz cały

a=1;
b=1;
cout << ++a; // zwroci liczbe 2;
cout << b++; // zwroci liczbe 1;
Tomix91
Użytkownik
Użytkownik
Posty: 175
Rejestracja: 8 sty 2009, o 19:12
Płeć: Mężczyzna
Lokalizacja: Stalowa Wola
Podziękował: 26 razy
Pomógł: 12 razy

[C] Objaśnienie fragmentu kodu

Post autor: Tomix91 »

Dzięki a ten znak \(\displaystyle{ >}\) co daje ?
mikkuexc
Użytkownik
Użytkownik
Posty: 65
Rejestracja: 19 maja 2011, o 20:33
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 1 raz
Pomógł: 5 razy

[C] Objaśnienie fragmentu kodu

Post autor: mikkuexc »

Znak większości po prostu.
ODPOWIEDZ