Турбо-Паскаль содержит множество стандартных функций и процедур, сосредоточенных в модуле system.tpu (который по умолчанию находится в библиотеке turbo.tpl, но может быть выделен оттуда и использован отдельно).
В этом параграфе мы рассмотрим общие функции и процедуры, не имеющие привязки к какому либо разделу нашего пособия. Остальные будут проанализированы в соответствующих параграфах (например функции и процедуры работы со строками - в параграфе "Строковые типы", функции и процедуры работы с динамической памятью - в параграфе "Указатели" и т.д.)
Функция или процедура |
Действие |
Тригонометрические функции |
|
f. ArcTan(X: Real): Real; |
Возвращает арктангенс аргумента |
f. Cos(X: Real): Real; |
Возвращает косинус аргумента |
f. Sin(X: Real): Real; |
Возвращает синус аргумента |
f. Pi: Real; |
Возвращает число Пи: 3.1415926535897932385 |
Функции для выделения целой и дробной части числа |
|
f. Frac(X: Real): Real; |
Возвращает десятичную часть аргумента |
f. Int(X: Real): Real; |
Возвращает целую часть аргумента. |
Логарифмическая и экспоненциальная функции |
|
f. Ln(X: Real): Real; |
Возвращает натуральный логарифм аргумента. |
f. Exp(X: Real): Real; |
Возвращает экспоненту аргумента |
Степенные функции |
|
f. Sqr(X: тип):тип; |
Возвращает квадрат аргумента. Тип результата соответствует типу аргумента. |
f. Sqrt(X: Real): Real; |
Возвращает квадратный корень аргумента |
Абсолютное значение |
|
f. Abs(X:тип):тип; |
Возвращает модуль аргумента. Тип результата соответствует типу аргумента. |
В отличии, например, от языка программирования Бейсик, ТП содержит очень небольшой объем арифметических функций. С помощью несложных операций он может быть расширен.
ab = exp(b*ln(a)); {а в степени b}
logab=ln(b)/ln(a); {логарифм по произвольному основанию}
Tan(x) = sin(x)/cos(x); {тангенс x}
сTan(x) = 1/tan(x); {арктангенс x}
Arcsin(x)=arctg(x/sqrt(1-sqr(x))); {арксинус x}
Arccos(x)=Pi/2-arcsin(x); {арккосинус x}
Arcctan(x)= Pi/2-arctan(x); {арккотангенс x}
Ch(x)=(exp(x)+exp(-x))/2; {гиперболический косинус x}
Sh(x)=(exp(x)-exp(-x))/2; {гиперболический синус x}