3. Запис арифметичних виразів.
Виразами називаються алгоритмічні конструкції мови, що визначають правила для обчислення значень змінних величин. Вираз складається з операндів: змінних, констант, назв функцій, що відокремлюються один від одного за допомогою операторів.
У наступних таблицях наведені типи операндів і результати для бінарних і унарних арифметичних операцій, а також основні арифметичні функції.
Будь-який операнд, тип якого є піддіапазоном порядкового типу, опрацьовується так, якби він був порядкового типу.
Якщо обидва операнди в операторах +, -, *, div або mod є операндами цілого типу, то тип результату є таким же, як спільний тип обох операндів.
Якщо при використанні оператора збереження знака або оператора заперечення знака операнд має цілий тип, то результат є того ж цілого типу. Якщо операнд дійсного типу, то тип результату є Real.
Значення виразу x/y завжди є Real незалежно від типів операндів. Якщо y дорівнює 0, то виникає помилка.
Значення виразу i div j являє собою цілу частину від ділення i/j. Якщо j дорівнює 0, то виникає помилка. Наприклад, 25 div 4 = 6, 21 div 3 = 7.
Оператор mod повертає залишок, отриманий при діленні двох його операндів. Наприклад, 25 mod 4 = 1, 21 mod 3 = 0.
Знак результату оператора mod є тим же, що і знак змінної i. Якщо j дорівнює 0, то виникає помилка.
Таблиця 4.3 Бінарні арифметичні операції
Оператор |
Операція |
Тип |
Тип |
+ |
додавання |
цілий |
цілий |
дійсний |
дійсний |
||
– |
віднімання |
цілий |
цілий |
дійсний |
дійсний |
||
* |
множення |
цілий |
цілий |
дійсний |
дійсний |
||
/ |
ділення |
цілий |
дійсний |
дійсний |
дійсний |
||
div |
цілочисельне ділення |
цілий |
цілий |
mod |
залишок цілочисельного ділення |
цілий |
цілий |
Таблиця 4.4 Унарні арифметичні операції
тор |
Операція |
Тип операндів |
Тип результату |
+ |
збереження знака |
цілий |
цілий |
|
|
дійсний |
дійсний |
- |
заперечення знака |
цілий |
цілий |
|
|
дійсний |
дійсний |
Таблиця 4.5. Основні арифметичні функції.
№ |
Математичний запис |
Запис в |
Тип |
Тип |
|
|
1. |
sin x |
sin(x) |
real |
real |
|
|
2. |
cos x |
cos(x) |
real |
real |
|
|
3. |
ex |
exp(x) |
real |
real |
|
|
4. |
ln x |
ln(x) |
real |
real |
|
|
Математичний запис |
Запис мовою ПАСКАЛЬ |
|||||
|
(a+b)/(c*d) |
|||||
|
exp(x+1)*(a-x) |
|||||
|
sqr(sin(x*x*x)) |
|||||
|
sin((2*x)/(x+1))/cos(((2*x)/(x+1)) |
|||||
|
exp(1/3*ln(x+1)) |
|||||
Зауважимо, що можливі й інші вірні варіанти запису виразів.
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 Наверх ↑