Математические функции

Математические функции выполняют различные математические операции над числовыми значениями.

Обзор функций

Функция

Параметры

Описание

Возвращает

ABS(in)

in: числовой тип

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

Тот же тип, что и in

SQRT(in)

in: числовой тип (>=0)

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

Тот же тип, что и in

LN(in)

in: числовой тип (>0)

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

Тот же тип, что и in

LOG(in)

in: числовой тип (>0)

Десятичный логарифм

Тот же тип, что и in

EXP(in)

in: числовой тип

Экспонента (e^in)

Тот же тип, что и in

EXPT(in, expt)

in: числовой тип, expt: числовой тип

Возведение in в степень expt

Тот же тип, что и in

SIN(in)

in: числовой тип (в радианах)

Синус

Тот же тип, что и in

COS(in)

in: числовой тип (в радианах)

Косинус

Тот же тип, что и in

TAN(in)

in: числовой тип (в радианах)

Тангенс

Тот же тип, что и in

ASIN(in)

in: числовой тип ([-1, 1])

Арксинус (возвращает радианы)

Тот же тип, что и in

ACOS(in)

in: числовой тип ([-1, 1])

Арккосинус (возвращает радианы)

Тот же тип, что и in

ATAN(in)

in: числовой тип

Арктангенс (возвращает радианы)

Тот же тип, что и in

TRUNC(in)

in: числовой тип

Преобразование из REAL в INT (отбрасывание дробной части)

INT (или эквивалент)

Функции сравнения и ограничения

Функция

Параметры

Описание

Возвращает

MAX(in0, in1)

in0, in1: числовой тип

Возвращает наибольшее из двух значений

Тот же тип, что и параметры

MIN(in0, in1)

in0, in1: числовой тип

Возвращает наименьшее из двух значений

Тот же тип, что и параметры

LIMIT(MIN, in, MAX)

MIN, in, MAX: числовой тип

Ограничивает значение in в пределах от MIN до MAX

Тот же тип, что и параметры

Примеры:

VAR
    value : REAL := -5.5;
    result : REAL;
    int_result : INT;
    max_val : REAL;
    min_val : REAL;
    limited : REAL;
END_VAR

// Абсолютное значение
result := ABS(value);               // result = 5.5

// Квадратный корень
result := SQRT(25.0);               // result = 5.0

// Тригонометрические функции
result := SIN(1.5708);              // result ≈ 1.0 (sin 90°)
result := COS(0.0);                 // result = 1.0

// Экспонента и логарифмы
result := EXP(1.0);                 // result ≈ 2.71828 (e^1)
result := LN(2.71828);              // result ≈ 1.0

// Степень
result := EXPT(2.0, 3.0);           // result = 8.0

// Преобразование
int_result := TRUNC(3.14);          // int_result = 3
int_result := TRUNC(-3.14);         // int_result = -3

// Сравнения
max_val := MAX(10, 20);             // max_val = 20
min_val := MIN(10, 20);             // min_val = 10
limited := LIMIT(0, 15, 10);        // limited = 10 (ограничено сверху)
limited := LIMIT(0, -5, 10);        // limited = 0 (ограничено снизу)
        

См. также

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