Програмування С, С++теорія та практика (частина 1)
1.4.1 Арифметичні операції
До арифметичних операцій належать відомі всім бінарні операції додавання, віднімання, множення, ділення та знаходження залишку від ділення (таблиця 1.4.).
|
Таблиця 1.4. Бінарні арифметичні операції
|
Для наведених арифметичних операцій діють наступні правила :
• бінарні операції додавання (+) та віднімання (-) можуть застосовуватися до цілих та дійних чисел, а також до покажчиків;
• в операціях множення (*) та ділення (/) операнди можуть бути будь-яких арифметичних типів;
• операція „залишок від ділення” застосовується лише до цілих операндів.
• Операції виконуються зліва направо, тобто спочатку обчислюється вираз лівого операнда, потім вираз, що стоїть справа від знака операції. Якщо операнди мають однаковий тип, то результат арифметичної операції має той же тип. Тому, коли операції ділення / застосовується до цілих або символьних змінних, залишок відкидається. Так, вираз 11/3 буде рівний 3, а вираз 1/2 буде рівним нулю.
В мові Сі визначені також і унарні арифметичні операції (таблиця 1.5.).
Операція інкременту (++) збільшує операнд на одиницю, а операція декременту (--) відповідно зменшує операнд на одиницю. Ці операції виконуються швидше, ніж звичайні операції додавання одиниці (а=а+1;) чи віднімання одиниці (а=а-1;).
|
Таблиця 1.5. Унарні арифметичні операції
|
Існує дві форми запису операцій інкременту та декременту : префіксна та постфіксна.
Якщо операція інкременту (декременту) розміщена перед змінною, то говорять про префіксну форму запису інкременту (декременту). Якщо операція інкременту (декременту) записана після змінної, то говорять про постфіксну форму запису. У префіксній формі змінна спочатку збільшується (зменшується) на одиницю, а потім її нове значення використовується у виразі. При постфіксній формі у виразі спочатку використовується поточне значення змінної, а потім відбувається збільшення (зменшення) цієї змінної на одиницю.
Приклад, який демонструє роботу операції інкременту:
#іпс1ийе<з'Ьйіо. Ь>
Vоій. таіп ()
{
іп£ х=3,у=3;
ргіп^£("Значення префіксного виразу ргіп^£("Значення постфіксного виразу ргіп^£("Значення х після інкременту ргіп^£("Значення у після інкременту
}
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
