Poznaj C++ w$ godziny0059

Poznaj C++ w$ godziny0059



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.

Kolejność działań

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.

Kolejność działań

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.


Wyszukiwarka

Podobne podstrony:
Poznaj C++ w$ godziny0089 Funkcje 75 Kiedy wartość jest odkładana na stos, to jest umieszczana w kom
Poznaj C++ w$ godziny0045 Zmienne i stałe 29Przypisywanie wartości do zmiennych Wartości przypisuje
Poznaj C++ w$ godziny0122 110Godzina 8 duża liczbę: "; wartość pomijania: "; wartość
Poznaj C++ w$ godziny0202 Zaawansowane funkcje 193 W liniach 53 i 54 wypisywany jest wiek obydwu KOT
wyników, itp.) należy umieścić je w załącznikach, na końcu pracy. Załączniki są numerowane kolejnymi
STRATEGIE OFENSYWNE Są one przeznaczone przede wszystkim dla firm istniejących już na rynku od jakie
avoda2 big Popatrz na rysunek i odpowiedz na pytania: Które rządy są jednakowe?_ W którym rządzie ws
Poznaj C++ w$ godziny0088 74 Godzina 5 Last-in first-out oznacza, że ostatnia wartość położona na st
Poznaj C++ w$ godziny0199 190 Godzina 13 _________ Płytkie kopiowanie polega na skopiowaniu wartości
Poznaj C++ w$ godziny0001 Gdy masz czas tylko na właściwe rozwiązania... Intersoftlcind Gdy masz cza
Poznaj C++ w$ godziny0007 VI Poznaj C++ w 24 godziny Przypisywanie wartości do zmiennych
Poznaj C++ w$ godziny0021 Zaczynamy 5 Sumowanie zarobków można z kolei rozłożyć na: 1.   &
Poznaj C++ w$ godziny0029 Zaczynamy 13 Skompiluj program ponownie. Na ekranie powinieneś zobaczyć ko
Poznaj C++ w$ godziny0033 Program w C++ 17 Sednem naszego programu jest linia 5. Obiekt cout użyty z
Poznaj C++ w$ godziny0035 Program w C++ 19Funkcje ■ain() jest funkcją specjalną. Jest automatycznie
Poznaj C++ w$ godziny0036 20 Godzina 2Korzystanie z funkcji Funkcja może zwracać albo jakąś wartość

więcej podobnych podstron