44 Godzina 4
Na końcu obie wartości są ponownie wypisywane. Ponieważ wszystkie inkremen-tacje zostały już wykonane, to na ekranie uzyskujemy w obydwu przypadkach wartość 41.
Spójrzmy na instrukcję: x =5+3*8;
Które z działań jest wykonywane w pierwszej kolejności, dodawanie czy mnożenie? Jeśli dodawanie, to wynik powinien być równy 8*8 czyli 64, jeśli mnożenie, to 5 + 24
czyli 29.
NOWY TERMIN
Każdy operator ma swój priorytet (numer kolejności), kompletna lista priorytetów znajduje się w dodatku A - „Priorytety operatorów”. Mnożenie ma wyższy priorytet (większy numer pierwszeństwa) niż dodawanie. Dlatego wartość podanego wyrażenia wynosi 29.
Kiedy dwa operatory mają ten sam priorytet, to o kolejności ich wykonywania decyduje położenie w wyrażeniu, działania są wykonywane od strony lewej do prawej. Np. wyrażenie: x=5+3+8*9+6*4;
Najpierw obliczane są mnożenia, od lewej strony do prawej: 8 * 9 = 72 i 6 * 4 = 24. Wyrażenie wygląda potem następująco:
X = 5 + 3 + 72 + 24;
Teraz wykonywane są dodawania, znowu od strony lewej do prawej: 5 + 3 = 8; 8 + 72
= 80; 80 + 24 = 104;
Bądź jednak ostrożny. Niektóre operatory, tak jak np. operator przypisania, są wykonywane od strony prawej do lewej. Co robić, gdy kolejność wykonywania działań nie odpowiada wymaganiom? Spójrzmy na wyrażenie:
LiczbaSekund = LiczbaMinutNaZastanowienie + LiczbaMinutNaWpisanie * 60;
W tym wyrażeniu nie chcemy mnożyć zmiennej LiczbaMinutNaWpisanie przez 60, a potem dodawać do tego zmiennej LiczbaMinutNaZastanowienie. Chcemy dodać dwie zmienne i dopiero otrzymaną liczbę minut pomnożyć przez 60, aby otrzymać liczbę sekund.
W tym przypadku trzeba użyć nawiasów, aby zmienić kolejność wykonywania działań. Wyrażania w nawiasach będą wykonywane w pierwszej kolejności z najwyższym priorytetem ze wszystkich operatorów matematycznych. Zatem:
LiczbaSekund = (LiczbaMinutNaZastanowienie + LiczbaMinutNaWpisanie) * 60;
Na końcu obie wartości są ponownie wypisywane. Ponieważ wszystkie inkremen-tacje zostały już wykonane, to na ekranie uzyskujemy w obydwu przypadkach wartość 41.
Spójrzmy na instrukcję: x = 5 + 3 * 8;
Które z działań jest wykonywane w pierwszej kolejności, dodawanie czy mnożenie? Jeśli dodawanie, to wynik powinien być równy 8*8 czyli 64, jeśli mnożenie, to 5 + 24 czyli 29.
Każdy operator ma swój priorytet (numer kolejności), kompletna lista priorytetów znajduje się w dodatku A - „Priorytety operatorów”. Mnożenie ma wyższy priorytet (większy numer pierwszeństwa) niż dodawanie. Dlatego wartość podanego wyrażenia wynosi 29.
Kiedy dwa operatory mają ten sam priorytet, to o kolejności ich wykonywania decyduje położenie w wyrażeniu, działania są wykonywane od strony lewej do prawej. Np. wyrażenie:
x = 5 + 3 + 8*9 + 6*4;
Najpierw obliczane są mnożenia, od lewej strony do prawej: 8 * 9 = 72 i 6 * 4 = 24. Wyrażenie wygląda potem następująco:
x = 5 + 3 + 72 + 24;
Teraz wykonywane są dodawania, znowu od strony lewej do prawej: 5 + 3 = 8; 8 + 72 = 80; 80 + 24 = 104;
Bądź jednak ostrożny. Niektóre operatory, tak jak np. operator przypisania, są wykonywane od strony prawej do lewej. Co robić, gdy kolejność wykonywania działań nie odpowiada wymaganiom? Spójrzmy na wyrażenie:
LiczbaSekund = LiczbaMinutNaZastanowienie + LiczbaMinutNaWpisanie * 60;
W tym wyrażeniu nie chcemy mnożyć zmiennej LiczbaMinutNaWpisanie przez 60, a potem dodawać do tego zmiennej LiczbaMinutNaZastanowienie. Chcemy dodać dwie zmienne i dopiero otrzymaną liczbę minut pomnożyć przez 60, aby otrzymać liczbę sekund.
W tym przypadku trzeba użyć nawiasów, aby zmienić kolejność wykonywania działań. Wyrażania w nawiasach będą wykonywano w pierwszej kolejności z najwyższym priorytetem ze wszystkich operatorów matematycznych. Zatem:
LiczbaSekund = (LiczbaMinutNaZastanowienie + LiczbaMinutNaWpisanie) * 60;
Takie wyrażenie stanowi prawidłowe rozwiązanie problemu.