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

Набор математических и тригонометрических функций.

 

MathAbs

double MathAbs(double value)

Функция возвращает абсолютное значение (значение по модулю) переданного ей числа

Параметры:

value — Числовая величина.

Пример:

double dx=-3.141593, dy;

// вычисляет MathAbs
dy=MathAbs(dx);

Print("Абсолютная величина ",dx," есть ",dy);

// Вывод: абсолютная величина -3.141593 есть 3.141593

 

MathArccos

double MathArccos(double x)

Функция возвращает значение арккосинуса x в диапазоне 0 к π в радианах. Если x меньше -1 или больше 1, функция возвращает NaN (неопределенное значение).

Параметры:

x — Значение между -1 и 1, арккосинус которого должен быть вычислен.

Пример:

double x=0.32696, y;

y = asin(x);
Print("арксинус от ",x," = ",y);

y=acos(x);
Print("арккосинус от ",x," = ",y);

// Вывод: арксинус от 0.326960=0.333085
// Вывод: арккосинус от 0.326960=1.237711

 

MathArcsin

double MathArcsin(double x)

Функция возвращает арксинус x в диапазоне от -π/2 до π/2 радианов. Если x-, меньше -1 или больше 1, функция возвращает NaN (неопределенное значение).

Параметры:

x — Значение, для которого должен быть вычислен арксинус.

Пример:

double x=0.32696, y;

y=asin(x);
Print("арксинус от ",x," = ",y);

y=acos(x);
Print("арккосинус от ",x," = ",y);

// Вывод: арксинус от 0.326960=0.333085
// Вывод: арккосинус от 0.326960=1.237711

 

MathArctan

double MathArctan(double x)

Функция возвращает арктангенс x. Если x равен 0, функция возвращает 0. MathArctan возвращает значение в диапазоне от -π/2 до π/2 радианов.

Параметры:

x — Число, представляющее тангенс.

Пример:

double x=-862.42, y;

y=MathArctan(x);
Print("Арктангенс от ",x," есть ",y);

// Вывод: Арктангенс от -862.42 есть -1.5696

 

MathCeil

double MathArctan(double x)

Функция возвращает арктангенс x. Если x равен 0, функция возвращает 0. MathArctan возвращает значение в диапазоне от -π/2 до π/2 радианов.

Параметры:

x — Число, представляющее тангенс.

Пример:

double x=-862.42, y;

y=MathArctan(x);
Print("Арктангенс от ",x," есть ",y);

// Вывод: Арктангенс от -862.42 есть -1.5696

 

MathCos

double MathCos(double value)

Функция возвращает косинус угла.

Параметры:

value — Угол в радианах.

Пример:

double pi=3.1415926535;
double x, y;

x=pi/2;
y=MathSin(x);
Print("MathSin(",x,") = ",y);

y=MathCos(x);
Print("MathCos(",x,") = ",y);

// Вывод: MathSin(1.5708)=1
// MathCos(1.5708)=0

 

MathExp

double MathExp(double d)

Функция возвращает значение числа e в степени d. При переполнении функция возвращает INF (бесконечность), в случае потери порядка MathExp возвращает 0.

Параметры:

d — Число, определяющее степень.

Пример:

double x=2.302585093,y;

y=MathExp(x);
Print("MathExp(",x,") = ",y);

// Вывод: MathExp(2.3026)=10

 

MathFloor

double MathFloor(double x)

Функция возвращает числовое значение, представляющее наибольшее целое число, которое меньше или равно x.

Параметры:

x — Числовое значение.

Пример:

double y;

y=MathFloor(2.8);
Print("Наименьшее целое от 2.8 есть ",y);

y=MathFloor(-2.8);
Print("Наименьшее целое от -2.8 есть ",y);

/*Вывод:
Наименьшее целое от 2.8 есть 2
Наименьшее целое от -2.8 есть -3*/

 

MathLog

double MathLog(double x)

Функции возвращают натуральный логарифм x в случае успеха. Если x отрицателен, функция возвращает NaN (неопределенное значение). Если x равен 0, функция возвращает INF (бесконечность) .

Параметры:

x — Значение, логарифм которого должен быть вычислен.

Пример:

double x=9000.0,y;

y=MathLog(x);
Print("MathLog(",x,") = ", y);

// Вывод: MathLog(9000)=9.10498

 

MathMax

double MathMax(double value1, double value2)

Функция возвращает максимальное из двух числовых значений.

Параметры:

value1 — Первое числовое значение.
value2 — Второе числовое значение.

Пример:

double result=MathMax(1.08,Bid);

 

MathMin

double MathMin(double value1, double value2)

Функция возвращает минимальное из двух числовых значений.

Параметры:

value1 — Первое числовое значение.
value2 — Второе числовое значение.

Пример:

double result=MathMin(1.08,Ask);

 

MathMod

double MathMod(double value, double value2)

Функция возвращает вещественный остаток от деления двух чисел.

Функция MathMod рассчитывает вещественный остаток f от x / y таким образом, что x = i * y + f , где i является целым числом, f имеет тот же знак, что и x, и абсолютное значение f меньше, чем абсолютное значение y.

Параметры:

value — Значение делимого.
value2 — Значение делителя.

Пример:

double x=-10.0,y=3.0,z;

z=MathMod(x,y);
Print("Остаток от ",x," / ",y," есть ",z);

// Вывод: Остаток от -10 / 3 есть -1

 

MathPow

double MathPow(double base, double exponent)

Функция возвращает значение основания, возведенного в указанную степень.

Параметры:

base — Основание.
exponent — Значение степени.

Пример:

double x=2.0,y=3.0,z;

z=MathPow(x,y);
Printf(x," в степени ",y," есть ", z);

// Вывод: 2 в степени 3 есть 8

 

MathRand

int MathRand()

Функция возвращает псевдослучайное целое число в дипазоне от 0 до 32767. Перед первым вызовом функции необходимо использовать функцию MathSrand, чтобы перевести генератор псевдослучайных чисел в начальное состояние.

Пример:

MathSrand(TimeLocal());

// Отображает 10 чисел.
for(int i=0;i<10;i++ )
  Print("произвольная величина ", MathRand());

 

MathRound

double MathRound(double value)

Функция возвращает значение, округленное до ближайшего целого числа указанного числового значения.

Параметры:

value — Числовая величина для округления.

Пример:

double y=MathRound(2.8);
Print("Округление 2.8 до ",y);

y=MathRound(2.4);
Print("Округление -2.4 до ",y);

// Вывод: Округление 2.8 до 3
// Округление -2.4 до -2

 

MathSin

double MathSin(double value)

Функция возвращает синус указанного угла.

Параметры:

value — Угол в радианах.

Пример:

double pi=3.1415926535;
double x, y;

x=pi/2;
y=MathSin(x);
Print("MathSin(",x,") = ",y);

y=MathCos(x);
Print("MathCos(",x,") = ",y);

// Вывод: MathSin(1.5708)=1
// MathCos(1.5708)=0

 

MathSqrt

double MathSqrt(double x)

Функция возвращает квадратный корень x. Если x отрицателен, MathSqrt возвращает NaN (неопределенное значение).

Параметры:

x — Положительная числовая величина.

Пример:

double question=45.35, answer;

answer=MathSqrt(question);

if(question<0)
  Print("Ошибка: MathSqrt возвратил ",answer," ответ");
else
  Print("Квадратный корень из ",question," есть ", answer);

//Ответ: Квадратный корень из 45.35 есть 6.73

 

MathSrand

void MathSrand int seed)

Функция устанавливает начальное состояние для генерации ряда псевдослучайных целых чисел. Чтобы переинициализировать генератор (т.е. установить генератор в предыдущее начальное состояние), необходимо использовать значение 1 в качестве инициализирующего параметра. Любое другое значение для начального числа устанавливает генератор в случайную отправную точку. MathRand возвращает подряд сгенерированные псевдослучайные числа. Вызов MathRand перед любым вызовом MathSrand генерирует ту же самую последовательность, что и запрос MathSrand с параметром 1.

Параметры:

seed — Начальное число для ряда случайных чисел.

Пример:

MathSrand(TimeLocal());

// Отображает 10 чисел.
for(int i=0;i<10;i++ )
  Print("произвольная величина ", MathRand());

 

 MathTan

double MathTan(double x)

Функция возвращает тангенс x. Если x больше или равен 263 или меньше или равен -263, то происходит потеря значения и функция возвращает неопределенное число.

Параметры:

x — Угол в радианах.

Пример:

double pi=3.1415926535;
double x,y;

x=MathTan(pi/4);
Print("MathTan(",pi/4," = ",x);

// Вывод: MathTan(0.7856)=1