Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмизация и программирование 14.12.2011.doc
Скачиваний:
91
Добавлен:
07.02.2015
Размер:
833.54 Кб
Скачать

Стандартные математические функции и процедуры Турбо-Паскаля

Наименование Функции

Тип аргумента

Тип значения

Результат вычесления

 

МАТЕМАТИЧЕСКИЕ ФУНКЦИИ

abs(x)

Целый вещественный

Целый вещественный

Абсолютное значение "x"

sin(x)

Вещественный

Вещественный

Синус"x"рад

cos(x)

Вещественный

Вещественный

косинус"x"рад

arctan(x)

Вещественный

Вещественный

арктангенс "х" ( -Pi/2 < y < td )< 2 Pi>

Sqrt(x)

вещественный

вещественный

квадратный корень из "х"(Ц х, где x > 0)

Sqr(x)

Целый вещественный

Целый вещественный

значение "х" в квадрате ( х2 )

Exp(x)

вещественный

вещественный

значение "е" в степени "х" ( ех, где e= 2. 718282. . . )

Ln(x)

вещественный

вещественный

натуральный логарифм "х" ( х > 0 )

Frac(x)

вещественный

вещественный

дробная часть "х"

Int(x)

Вещественный

Вещественный

целая часть "х"

Random

-

вещественный

случайное число ( 0 < =y< 1 )

Random(x)

Word

Word

случайное число ( 0 < =y< x )

Succ(c)

Порядковый

Порядковый

следующий за "с" символ

Pred(c)

Порядковый

Порядковый

предшествующий "с" символ

Наименование процедуры

Тип аргумента

Тип значения

Результат вычесления

 

МАТЕМАТИЧЕСКИЕ ПРОЦЕДУРЫ

Inc(x)

целый

целый

Увеличивает "х" на 1 ( x:=x+1; )

Dec(x)

целый

целый

Уменьшает "х" на 1 ( x:=x+1; )

Inc(x, n)

целый

целый

Увеличивает "х" на n ( x:=x+1; )

Dec(x, n)

целый

целый

Уменьшает "х" на n ( x:=x+1; )

 

ПРОЦЕДУРЫ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ

Str(x, s)

x-целый или вещественный

s-строковый

Последовательность символов "s"из цифр числа "x"

Val(s, v, cod)

s-строковый

v-целый или вещественный cod- целый

Двоичная форма числа "v"последовательности "s" cod=0 (код ошибки)

 

ФУНКЦИИ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ

Trunc(x)

вещественный

LongInt

целая часть "х"

Round(x)

вещественный

LongInt

округление "х" до целого

Odd(x)

целый

логический

возвращает True если "х" - нечетное число

Сhr(x)

Byte

Char

Символ ASCII кода "х"

Ord(c)

Char Порядковый

Byte LongInt

ASCII код символа "с" Порядковый номер символа "с"

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

При вызове функция возвращает значение, которое необходимо присвоить переменной. Например, запись Y:= Sin(x); позволяет вычислить значение синуса угла "х", которое присваивается переменной "Y". Функции имеют высший приоритет, т. е. в выражении сначала вычисляется значение функции, а затем выполняются другие операции. Например: в выраженииY:= 5 * Cos(Pi + x); сначала вычисляется значение аргумента, затем значение функции, которое умножается на пять.

При вызове процедура производит определенные действия и может возвращать значения параметров. Процедура может не иметь параметров, например, для инициализации распределения случайных чисел вызывается процедура Randomize. Процедуры могут включать параметры, которые необходимо задать при вызове процедуры и параметры, которые возвращают значения после выполнения процедуры. Например, при вызове процедурыStr(x, s); параметр "x" должен быть задан, а параметр "S" возвращает строковый вид числа "x". В некоторых процедурах параметры изменяют свое значение, например, процедураInc(x); увеличивает значение "x" на единицу, т. е. возвращает новое значение "x", что соответствует операторуx:=x+1; Таким образом, при вызове процедуры необходимо знать назначение и тип задаваемых параметров.

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

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

  1. вычисляются подвыражения, заключенные в скобки;

  2. затем выполняются операции с наибольшим приоритетом; обычно используются следующие уровни приоритетов (в порядке убывания):

  • возведение в степень;

  • мультипликативные операции: * , / , div , mod;

  • унарные операции: + , - , abs , not;

  • аддитивные операции: +, -;

  • операции отношения: = , <>, <, >, <=, >=;

  • логические операции: and, or, not;

  1. операции с одинаковым приоритетом выполняются слева направо.

Хотя нет ограничений на сложность выражений, однако выражения, содержащие более 7 операндов, трудны для чтения и понимания и поэтому такие выражения не рекомендуется использовать.

Замечание (это важно!)

  • в Паскале нет стандартной операции или стандартной функции возведения в степень, поэтому используется следующее математическое тождество: xy = eylnx.

  • в Паскале существует только стандартная функция вычисления натурального логарифма, поэтому используется следующее математическое тождество: logab= ln b/ln a

Математическое выражение: x3/2 - 7x + tg (x+2)

Выражение на Паскале: exp(3*ln(x)/2)-7*x+sin(x+2)/cos(x+2)