siema kto ogarnia jak się rozwiązuje takie równania z tematyki programowania :
a=5
b=1
-(a++ -b)/2 ?
byłbym wdzięczny za pomoc !!
a++ - dodaj do a 1, ale po wykonaniu działania
czyli
-(5-1)/2 wychodzi -2
po wykonaniu działania
a=6
b=1
dobra czaje czyli w tym równaniu jest 5+1 ale zmieniam znak bo przed nawiasem jest minus? :P
zapis a+=3 znaczy też a:=a+3, zapis a-=3 znaczy też a:=a-3
wyrażenie można zapisać tak: -((a++)-b)/2
kolejność obliczania wyrażenia jest taka, że najpierw do obliczenia wartości brana jest aktualna wartość a czyli 5 od tego jest odejmowana aktualna wartość b czyli 1. Stąd mamy wyrażenie -(5-1)/2 czyli -2. Do wartości a dodawane jest 1 po wyliczeniu wyrażenia
gdyby wyrażenie było zapisane tak: -((++a)-b)/2 kolejność obliczania wyrażenia zmieniła by się w przypadku zmiennej 'a' i tak:
najpierw zwiększy się wartość a o 1 czyli a będzie miało wartość 6 od tego jest odejmowana aktualna wartość b czyli 1. Stąd mielibyśmy wyrażenie -(6-1)/2 czyli -2.5
W jednym i drugim przypadku końcowa wartość zmiennych byłaby taka sama a=6 i b=1
EDIT: literówka