Учись программированию на C++ Builder бесплатно!

При работе с тригонометрическими функциями надо иметь в виду, что файлы math.h и Math.hpp в C++Builder автоматически не подключаются к модулю вашего приложения. Поэтому для использования функций необходимо вручную вводить директивы:

#include <math.h>
#include <Math.hpp>

Во всех тригонометрических функциях угол задается в радианах. Пересчет угла в радианы из значения, заданного в градусах или периодах, позволяют осуществить функции DegToRad и CycleToRad. Например, оператор:

double Rad = DegToRad(90);

заносит в переменную Rad значение угла 90 градусов в радианах. То же самое значение заносит в переменную Rad оператор:

double Rad = CycleToRad(0.25);

в котором значение угла задано в периодах (четверть периода). Следующее выражение вычисляет синус 90 градусов:

double S = sin(DegToRad(90));

Все обратные тригонометрические функции вычисляют главные значения: acos и acosl в диапазоне [0, p], asin, asinl, atan, atan2, atan2l, atanl в диапазоне [~Π/2, Π/2]. Результат возвращается в радианах. Пересчет угла в радианах в значения градусов или долей периода позволяют осуществить функции RadToDeg и RadToCycle. Например, операторы:

double А = atan(T);
double A1 = RadToDeg(atan(T));
double A2 = RadToCycle(atan(T));

вычисляют арктангенс T в радианах (А), в градусах (A1) и в долях периода (A2).

В функциях acos, acosl, asin, asinl, если заданный аргумент не попадает в диапазон значений [-1, +1], происходит ошибка выхода за пределы области определения (EDOM). В гиперболических функциях tosh, coshl, sinh, sinhl, если заданный аргумент слишком велик, происходит ошибка выхода за диапазон допустимых значений (ERANGE).

Функция Синтаксис Описание Файл
acos double acos(double x) арккосинус math.h
acosl long double acosl(long donble x) арккосинус math.h
ArcCos Extended ArcCos(Extended X) арккосинус Math.hpp
ArcCosh Extended ArcCosh(Extended X) арккосинус гиперболический Math.hpp
ArcSin Extended ArcSin(Extended X) арксинус Math.hpp
ArcSinh Extended ArcSinh(Extended X) арксинус гиперболический Math.h
ArcTan2 Extended ArcTan2(Extended Y, Extended X) арктангенс (Y / X) Math.hpp
ArcTanh Extended ArcTanh(Extended X) арктангенс гиперболический Math.hpp
asin double asin(double x) арксинус math.h
asinl long double asinl(long double x) арксинус math.h
atan double atan(double x) арктангенс math.h
atan2 double atan2(double y, double x) арктангенс у / x math.h
atan2l long double atan2l(long double y, long double x) арктангенс у / x math.h
cos double cos(double x) косинус math.h
cosh double cosh(double x) косинус гиперболический math.h
Cosh Extended Cosh(Extended X) косинус гиперболический Math.hpp
coshl long double coshl(long double x) косинус гиперболический math.h
cosl long double cosl(long double x) косинус math.h
Cotan Extended Cotan(Extended X) котангенс Math.hpp
CycleToRad Extended CycIeToRad(Extended Cycles) вычисляет угол в радианах по его значению в периодах Cycles: 2Π*Cycles Math.hpp
DegToRad Extended DegToRad(Extended Degrees) вычисляет угол в радианах по его значению в градусах Degrees: Degrees*Π/180 Math.hpp
hypot double hypot(double x, double y) гипотенуза треугольника с катетами x и у math.h
Hypot Extended Hypot(Extended X, Extended Y) расчет гипотенузы по катетам X и Y Math.hpp
hypotl long double hypotl(long double x, long double y) гипотенуза треугольника с катетами x и у math.h
RadToCycle Extended RadToCycle(Extended Radians) вычисляет угол в периодах по его значению в радианах Radians: Radians/(2Π) Math.hpp
RadToDeg Extended RadToDcg(Extended Radians) вычисляет угол в градусах по его значению в радианах Radians: Radians*180/Π Math.hpp
sin double sin(double x) синус math.h
SinCos void SinCos(Extended Theta, Extended &Sin, Extended &Cos) расчет синуса Sin и косинуса Cos угла Theta Math.hpp
Sinh Extended Sinh(Extended X) синус гиперболический Math.hpp
sinh double sinh(double x) синус гиперболический math.h
sinhl long double sinhl(long double x) синус гиперболический math.h
sinl long double sinl(long double x) синус math.h
Tan Extended Tan(Extended X) тангенс Math.hpp
tan double tan(double x) тангенс math.h
Tanh Extended Tanh(Extended X) тангенс гиперболический Math.hpp
tanh double tanh(double x) тангенс гиперболический math.h
tanhl long double tanhl(long double x) тангенс гиперболический math.h
tanl long double tanl(long double x) тангенс math.h

Поиск по сайту