math.h — заголовочный файл стандартной библиотеки языка программирования С, разработанный для выполнения простых математических операций. Большинство функций привлекают использование чисел с плавающей точкой. C++ также реализует данные функции для обеспечения совместимости, все они содержатся в заголовочном файле cmath.
Все эти функции принимают double, если не определено иначе. Для работы с типами float и long double используются функции с постфиксами f и l соответственно. Все функции, принимающие или возвращающие угол, работают с радианами.
Базовые функцииИмя Описание acos арккосинус asin арксинус atan арктангенс atan2 арктангенс с двумя параметрами ceil округление до ближайшего большего целого числа cos косинус cosh гиперболический косинус exp вычисление экспоненты fabs абсолютная величина (числа с плавающей точкой) floor округление до ближайшего меньшего целого числа fmod вычисление остатка от деления нацело для чисел с плавающей точкой frexp разбивает число с плавающей точкой на мантиссу и показатель степени. ldexp умножение числа с плавающей точкой на целую степень двух log натуральный логарифм log10 логарифм по основанию 10 modf(x,p) извлекает целую и дробную части (с учетом знака) из числа с плавающей точкой pow(x,y) результат возведения x в степень y, xy sin синус sinh гиперболический синус sqrt квадратный корень tan тангенс tanh гиперболический тангенс
Функции стандарта C99Имя Описание acosh гиперболический арккосинус asinh гиперболический арксинус atanh гиперболический арктангенс cbrt кубический корень copysign(x,y) возвращает величину, абсолютное значение которой равно x, но знак которой соответствует знаку y erf функция ошибок erfc Дополнительная функция ошибок exp2(x) значение числа 2, возведённого в степень x, 2x expm1(x) значение функции ex − 1 fdim(x,y) вычисление положительной разницы между x и y, fmax(x−y, 0) fma(x,y,z) значение функции (x * y) + z (см. FMA) fmax(x,y) наибольшее значение среди x и y fmin(x,y) наименьшее значение среди x и y hypot(x,y) гипотенуза, sqrt(x² + y²) ilogb экспонента числа с плавающей точкой, конвертированная в int lgamma натуральный логарифм абсолютного значения гамма-функции llrint округление до ближайшего целого (возвращает long long) lrint округление до ближайшего целого (возвращает long) llround округление до ближайшего целого в направлении от нуля (возвращает long long) lround округление до ближайшего целого в направлении от нуля (возвращает long) log1p(x) натуральный логарифм 1 + x log2 логарифм по основанию 2 logb целочисленная часть логарифма x по основанию 2 nan(s) возвращает нечисловое значение 'Not a Number' nearbyint округление аргумента до целого значения в формате числа с плавающей точкой nextafter(x,y) следующий ближайшее представимое для x (по направлению к y) nexttoward(x,y) то же, что и nextafter, но y имеет тип long double remainder(x,y) вычисляет остаток от деления согласно стандарту IEC 60559 remquo(x,y,p) то же, что и remainder, но сохраняет коэффициент по указателю p (как int) rint округление до целого (возвращает int) с вызовом ошибку inexact, если результат отличается от аргумента. round округление до целого (возвращает int) scalbln(x,n) x * FLT_RADIXn (n is long) scalbn(x,n) x * FLT_RADIXn (n is int) tgamma гамма-функция trunc округление до ближайшего целого числа в направлении к нулю
Расширения XSI
Эти функции не описаны в стандартах ANSI или ISO C, но могут присутствовать в системах в качестве расширений X/Open.Имя Описание j0(x) значение функций Бесселя первого рода порядков 0 для аргумента x j1(x) значение функций Бесселя первого рода порядков 1 для аргумента x jn(n,x) значение функций Бесселя первого рода порядка n scalb(x,y) x * FLT_RADIXy (x и y типа double) y0(x) значение функций Бесселя второго рода порядков 0 для аргумента x y1(x) значение функций Бесселя второго рода порядков 1 для аргумента x yn(n,x) значение функций Бесселя второго рода порядка n
Использование функций конвертации double-string ecvt, fcvt и gcvt не рекомендуется в пользу sprintf.
|