Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LYeKTsIYa_13_2.doc
Скачиваний:
14
Добавлен:
20.04.2019
Размер:
302.08 Кб
Скачать

5.1. Арифметические выражения и операции

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

Операция

Обозначение

Тип операндов

Тип результата

Умножение

A*B

real; integer

real; integer

Деление

A/B

real; integer

real; integer

Целая часть от деления

A div B

integer

integer

Остаток от деления

A mod B

integer

integer

Сложение

A+B

real; integer

real; integer

Вычитание

A-B

real; integer

real; integer

Операция сложения (+), вычитания (-), умножения (*) и деления (/) выполняются так же, как и в обычных арифметических выражениях.

Целочисленное деление (div) отличается от обычной операции деления тем, что вычисляет целую часть частного, дробная часть отбрасывается. Перед выполнением операции оба операнда округляются до целых значений. Результат целочисленного деления всегда равен нулю, если делимое меньше делителя.

Например: Выражение Результат

11 div 5 2

10 div 3 3

2 div 3 0

Остаток от деления (mod) вычисляет остаток, полученный при выполнении целочисленного деления.

Например: Выражение Результат

10 mod 5 0

11 mod 5 1

10 mod 3 1

14 mod 5 4

При вычислении арифметических выражений действуют обычные правила старшинства операций: в первую очередь выполняются умножение и деление, а потом - сложение и вычитание. Операции div и mod имеют тот же приоритет, что и операции умножения и деления. Из двух операций одинакового старшинства первой выполняется та, знак которой встречается раньше. Круглые скобки изменяют естественный порядок вычислений. Выражение, заключенное в круглые скобки, перед выполнением вычисляется как отдельный операнд. Все данные, входящие в арифметическое выражение, должны быть одного типа. Однако допускается использование в одной операции данных целого и действительного типа, результат которой при этом будет действительного типа.

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

, запись на Pascal - exp(a*ln(x)).

При составлении арифметических выражений следует придерживаться следующих правил:

1. Записывать все составные части выражения в одну строку. Например:

Запись на Pascal: (a1*x1+b2*x2+5*a3*x3)/(25*d-14*g)

2. Использовать скобки только одного вида - круглые.

  1. Нельзя записывать подряд два знака арифметических операций.

3*a*b/-z - неверная запись

3*a*b/(-z) - верная запись

  1. Вычисления выполняются слева на право в соответствии с приоритетом

операций: вычисление функций - умножение, деление, div, mod - сложение и

вычитание.

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

Например:

Запись на Pascal:

0.3*(((sin(x)*sin(x)-sqr(cos(x)))/sin((x+y)/2)-exp(abs(cos(x)+sin(x))))*ln(x)-sqrt(x-1))

ЗАДАНИЕ: какие результаты выполнения выражений неправильны?

1). 24/12=2 5). 2 div 3=1

2). 11 div 5=1 6). 6*5=30

3). 10 div 3=3 7). 11 mod 5=1

4). 15+21 div 2=25 8). 14 mod (5+3)=2

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]