Выражения

Выражение – это синтаксическая единица языка, определяющая способ вычисления некоторого значения. Выражения в языке Паскаль формируются из констант, переменных, функций, знаков операций и круглых скобок.

Функции – заранее разработанные подпрограммы, которые можно использовать как готовые объекты. Различают стандартные функции и функции, написанные программистом самостоятельно.

В таблице 3 рассмотрены наиболее часто используемые арифметические функции. Аргументы арифметических функций могут быть величинами целого и вещественного типа.

Таблица 3. Арифметические функции

Функция Назначение Тип результата
Abs(x) Абсолютное значение аргумента Совпадает с типом X
Arctan(x) Арктангенс аргумента Вещественный
Cos(x) Косинус аргумента Вещественный
Exp(x) ex Вещественный
Frac(x) Дробная часть числа Вещественный
Int(x) Целая часть числа Вещественный
Ln(x) Натуральный логарифм Вещественный
Pi Значение величины p=3.141592653... Вещественный
Sin(x) Синус аргумента Вещественный
Round(x) Округление аргумента Целый
Trunc(x) Выделение целой части Целый
Sqr(x) Квадрат аргумента Совпадает с типом Х
Sqrt(x) Квадратный корень аргумента Вещественный

{! Аргументы тригонометрических функций задаются в радианах. Аргумент заключается в скобки}.

Результат выполнения любой операции в выражениях зависит от типов операндов (переменных, констант, функций). Здесь мы рассмотрим только арифметические операции и, соответственно, тип результата может быть целым или вещественным.

Для того чтобы описать последовательность, в которой должны стоять операнды в выражениях и в которой должны расставляться скобки, целесообразно упорядочить операции по уровням.

В таблице 4 указаны арифметические операции и их уровни, а также типы результатов.

Таблица 4. Арифметические операции

Уровень Операция Тип операндов Тип результата Значение
  * * * / / / div   mod Real, real Integer, integer Real, integer Real, real Integer, integer Integer, real Integer, integer   Integer, integer Real Integer Real Real Real Real Integer   Integer Умножение Умножение Умножение Деление Деление Деление Деление без остатка Остаток от деления
  +,- +,- +,- Integer, integer Real, real Integer, real Integer Real Real Сложение и вычитание

Правила приоритетности операций в выражениях:

1.Операции уровня i выполняются до выполнения операций j, j > i.

2.Операции одного уровня выполняются поочередно слева направо.

3.Операции, заключенные в круглые скобки, выполняются раньше операций, записанных за скобками.

Эти правила действуют для всех типов выражений (арифметических, логических, строковых).

Последовательность действий, выполняемых при вычислении выражений:

1. Вычисления в круглых скобках.

2. Вычисления значений функций.

3. Унарные операции (-, not).

4. Операции типа умножения (*, /, div, mod, and);

5. Операции типа сложения (+, -, or, xor)

6. Операции отношения (=, <>, >, <, >=, <=, in)


Рассмотрим примеры записи арифметических выражений:

Обычная запись Запись на Паскале
 
 
 
 
 
 
 
 
 
 

Прокомментируем примеры:

Для указания последовательности выполнения действий в числителе и знаменателе появляются круглые скобки (примеры. 1,8).

Из-за отсутствия операции возведения в степень при записи выражений со степенями рекомендуется:

а) возведение в целую положительную степень заменять умножением (примеры 3,8)

б) возведение в целую отрицательную степень заменять делением на произведение сомножителей (пример 3)

в) для четных целых положительных степеней использовать функцию SQR (примеры 2, 4)

г) во всех других случаях возведение в степень вычисляется как экспонента от показателя степени, умноженного на натуральный логарифм степени (примеры 7, 9, 10).

Отсутствие функций tg и ctg приводит к усложнению выражений (примеры 3, 4, 5, 10).

Если аргумент у функции tg или ctg достаточно сложное выражение (примеры 5, 10), рекомендуется ввести новую переменную для обозначения аргумента, например, фрагмент программы для примера 10 можно записать так:

............

t: = cos(exp(1/5*ln(x/y))); { аргумент тангенса }

Z: = sin(t)/cos(t); { значение выражения присвоено переменной Z }

............

В данном случае действует общая рекомендация при программировании формул об обозначении повторяющихся выражений.

Примеры использования операций mod и div:

Формула Результат Формула Результат
13 div 4   15 mod 4  
-13 div 4 -3 -15 mod 4 -3
13 div –4 -3 15 mod –4  
-13 div –4   -15 mod –4 -3

{! При записи в программе операции div и mod слева и справа сопровождаются пробелами}.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: