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

1. 6 Арифметические операции

К арифметическим типам данных относятся группы вещественных и целых типов. К ним применимы арифметические операции и операции отношений. Арифметические операции стандартного Паскаля описаны в таблице 3.

Таблица 3

Арифметические операции языка Turbo Pascal

ЗНАК

ВЫРАЖЕНИЕ

ТИП ОПЕРАЦИИ

ТИП РЕЗУЛЬТАТА

ОПЕРАЦИЯ

+

A+B

R, R

I, I

I, R; R, I

R

I

R

СЛОЖЕНИЕ

_

A – B

R, R

I, I

I, R; R, I

R

I

R

ВЫЧИТАНИЕ

*

A*B

R, R

I, I

I, R; R, I

R

I

R

УМНОЖЕНИЕ

/

A/B

R, R

I, I

I, R; R, I

R

R

R

ДЕЛЕНИЕ

DIV

A div B

I, I

I

ЦЕЛОЕ ДЕЛЕНИЕ

MOD

A mod B

I, I

I

ОСТАТОК ОТ ЦЕЛОГО ДЕЛЕНИЯ

К арифметическим величинам могут быть применены стандартные функции Паскаля, описания которых содержатся в таблица 4.

Таблица 4

Стандартные математические функции языка Turbo Pascal

Обращение

Функция

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

Frac(x)

Дробная часть х

R

Int(x)

Целое

R

Ln(x)

Натуральный логарифм

R

Pi

Постоянная величина π

R

Abs(x)

Абсолютное значение (модуль числа)

R ИЛИ I

Arctan(x)

Арктангес х

R

Cos(x)

Косинус х

R

Exp(x)

е - экспанента

R

Random

Случайное число от 0 до 1

R

Random(n)

Случайное число от 0 до n

I

Odd(x)

True , если х – нечетное

False , если х – четное

Sin(x)

Синус х –( в радианах)

R

Sqr(x)

Квадрат аргумента

I ИЛИ R

Sqrt(x)

Квадратный корень

R

Trunc(x)

Ближайшее целое, не превышающие аргумент по модулю (отсекание дробной части числа x)

I

Round(x)

Округление до ближайшего целого аргумента

I

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

Определенную проблему представляет возведение X в степень n. Если значение степени n – целое положительное число, то можно n раз перемножить X (что дает более точный результат и при целом n предпочтительнее) или воспользоваться формулой,:

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

  • exp(n*ln(x)) – для положительного X;

  • -exp(n*ln(abs(x))) – для отрицательного X.

Эту же формулу можно использовать для возведения X в дробную степень n, где n - обыкновенная правильная дробь вида k/l, а знаменатель l нечетный. Если знаменатель l четный, это означает извлечение корня четной степени, следовательно есть ограничения на выполнение операции.

При возведении числа X в отрицательную степень n следует помнить, что

Таким образом, для программирования выражения, содержащего возведение в степень, надо внимательно проанализировать значения, которые могут принимать X и n, так как в некоторых случаях возведение X в степень n невыполнимо.

Для вычисления логарифма с основанием a используем: loga(x) = ln(x)/ln(a)