Стандартные математические функции
Функции
Определены в заголовочном файле <cstdlib> |
|
|---|---|
|
(C++11) | вычисляет абсолютное значение целого числа (\(\small{|x|}\)|x|) (функция) |
|
(C++11) | вычисляет частное и остаток от деления целых чисел (функция) |
Определены в заголовочном файле <cinttypes> |
|
|
(C++11)(C++11) | вычисляет абсолютное значение целого числа (\(\small{|x|}\)|x|) (функция) |
|
(C++11)(C++11) | вычисляет частное и остаток от деления целых чисел (функция) |
Определены в заголовочном файле <cmath> |
|
Основные операции |
|
|
(C++11)(C++11) | абсолютное значение числа с плавающей точкой (\(\small{|x|}\)|x|) (функция) |
|
(C++11)(C++11) | остаток от деления чисел с плавающей точкой (функция) |
|
(C++11)(C++11)(C++11) | знаковый остаток от операции деления (функция) |
|
(C++11)(C++11)(C++11) | знаковый остаток и три младших бита результата деления (функция) |
|
(C++11)(C++11)(C++11) | операция умножения с последующим сложением, выполняемая за один шаг (функция) |
|
(C++11)(C++11)(C++11) | большее из двух чисел с плавающей точкой (функция) |
|
(C++11)(C++11)(C++11) | меньшее из двух чисел с плавающей точкой (функция) |
|
(C++11)(C++11)(C++11) | положительная разность двух чисел с плавающей точкой (\({\small\max{(0, x-y)}}\)max(0, x-y)) (функция) |
|
(C++11)(C++11)(C++11) | не число (NaN) (функция) |
|
(C++26) | определяет большее из двух чисел с плавающей точкой. Если хотя бы один аргумент является NaN, возвращает NaN (функция) |
|
(C++26) | определяет меньшее из двух чисел с плавающей точкой. Если хотя бы один аргумент является NaN, возвращает NaN (функция) |
|
(C++26) | определяет большее из двух чисел с плавающей точкой. Если один аргумент является NaN, возвращает аргумент, не являющийся NaN. Возвращает NaN, только если оба аргумента являются NaN (функция) |
|
(C++26) | определяет меньшее из двух чисел с плавающей точкой. Если один аргумент является NaN, возвращает аргумент, не являющийся NaN. Возвращает NaN, только если оба аргумента являются NaN (функция) |
Экспоненциальные функции |
|
|
(C++11)(C++11) | возводит e в заданную степень (\({\small e^x}\)ex) (функция) |
|
(C++11)(C++11)(C++11) | возводит 2 в заданную степень (\({\small 2^x}\)2x) (функция) |
|
(C++11)(C++11)(C++11) | возводит e в заданную степень и вычитает 1 (\({\small e^x-1}\)ex-1) (функция) |
|
(C++11)(C++11) | вычисляет натуральный логарифм (по основанию e) (\({\small\ln{x}}\)ln(x)) (функция) |
|
(C++11)(C++11) | вычисляет десятичный логарифм (по основанию 10) (\({\small\log_{10}{x}}\)log10(x)) (функция) |
|
(C++11)(C++11)(C++11) | логарифм заданного числа по основанию 2 (\({\small\log_{2}{x}}\)log2(x)) (функция) |
|
(C++11)(C++11)(C++11) | натуральный логарифм (по основанию e) числа 1 плюс заданное число (\({\small\ln{(1+x)}}\)ln(1+x)) (функция) |
Степенные функции |
|
|
(C++11)(C++11) | возводит число в заданную степень (\(\small{x^y}\)xy) (функция) |
|
(C++11)(C++11) | вычисляет квадратный корень (\(\small{\sqrt{x}}\)√x) (функция) |
|
(C++11)(C++11)(C++11) | вычисляет кубический корень (\(\small{\sqrt[3]{x}}\)3√x) (функция) |
|
(C++11)(C++11)(C++11) | вычисляет гипотенузу \(\scriptsize{\sqrt{x^2+y^2}}\)√x2+y2 и \(\scriptsize{\sqrt{x^2+y^2+z^2}}\)√x2+y2+z2(начиная с C++17) (функция) |
Тригонометрические функции |
|
|
(C++11)(C++11) | вычисляет синус (\({\small\sin{x}}\)sin(x)) (функция) |
|
(C++11)(C++11) | вычисляет косинус (\({\small\cos{x}}\)cos(x)) (функция) |
|
(C++11)(C++11) | вычисляет тангенс (\({\small\tan{x}}\)tan(x)) (функция) |
|
(C++11)(C++11) | вычисляет арксинус (\({\small\arcsin{x}}\)arcsin(x)) (функция) |
|
(C++11)(C++11) | вычисляет арккосинус (\({\small\arccos{x}}\)arccos(x)) (функция) |
|
(C++11)(C++11) | вычисляет арктангенс (\({\small\arctan{x}}\)arctan(x)) (функция) |
|
(C++11)(C++11) | арктангенс, определяющий квадрант по знакам аргументов (функция) |
Гиперболические функции |
|
|
(C++11)(C++11) | вычисляет гиперболический синус (\({\small\sinh{x}}\)sinh(x)) (функция) |
|
(C++11)(C++11) | вычисляет гиперболический косинус (\({\small\cosh{x}}\)cosh(x)) (функция) |
|
(C++11)(C++11) | вычисляет гиперболический тангенс (\({\small\tanh{x}}\)tanh(x)) (функция) |
|
(C++11)(C++11)(C++11) | вычисляет обратный гиперболический синус (\({\small\operatorname{arsinh}{x}}\)arsinh(x)) (функция) |
|
(C++11)(C++11)(C++11) | вычисляет обратный гиперболический косинус (\({\small\operatorname{arcosh}{x}}\)arcosh(x)) (функция) |
|
(C++11)(C++11)(C++11) | вычисляет обратный гиперболический тангенс (\({\small\operatorname{artanh}{x}}\)artanh(x)) (функция) |
Функции ошибок и гамма-функции |
|
|
(C++11)(C++11)(C++11) | функция ошибок (функция) |
|
(C++11)(C++11)(C++11) | дополнительная функция ошибок (функция) |
|
(C++11)(C++11)(C++11) | гамма-функция (функция) |
|
(C++11)(C++11)(C++11) | натуральный логарифм гамма-функции (функция) |
Операции округления чисел с плавающей точкой до ближайшего целого |
|
|
(C++11)(C++11) | наименьшее целое число, не меньшее заданного значения (функция) |
|
(C++11)(C++11) | наибольшее целое число, не превышающее заданное значение (функция) |
|
(C++11)(C++11)(C++11) | ближайшее целое число, не превосходящее заданное значение по модулю (функция) |
|
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11) | ближайшее целое число; в случае ровно половинного значения округление выполняется от нуля (функция) |
|
(C++11)(C++11)(C++11) | ближайшее целое число с использованием текущего режима округления (функция) |
|
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11)(C++11) | ближайшее целое число с использованием текущего режима округления; вызывает исключение, если результат отличается (функция) |
Функции обработки чисел с плавающей точкой |
|
|
(C++11)(C++11) | разлагает число на значащую часть и показатель степени по основанию 2 (функция) |
|
(C++11)(C++11) | умножает число на 2 в целой степени (функция) |
|
(C++11)(C++11) | разлагает число на целую и дробную части (функция) |
|
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11) | умножает число на FLT_RADIX в заданной степени (функция) |
|
(C++11)(C++11)(C++11) | извлекает показатель степени числа (функция) |
|
(C++11)(C++11)(C++11) | извлекает показатель степени числа (функция) |
|
(C++11)(C++11)(C++11)(C++11)(C++11)(C++11) | следующее представимое значение с плавающей точкой в направлении заданного значения (функция) |
|
(C++26)(C++26)(C++26)(C++26)(C++26)(C++26) | определяет следующее представимое значение с плавающей точкой, большее или меньшее заданного значения (функция) |
|
(C++11)(C++11)(C++11) | копирует знак значения с плавающей точкой (функция) |
Классификация и сравнение |
|
|
(C++11) | классифицирует заданное значение с плавающей точкой (функция) |
|
(C++11) | проверяет, является ли заданное число конечным (функция) |
|
(C++11) | проверяет, является ли заданное число бесконечным (функция) |
|
(C++11) | проверяет, является ли заданное число NaN (функция) |
|
(C++11) | проверяет, является ли заданное число нормальным (функция) |
|
(C++11) | проверяет, является ли заданное число отрицательным (функция) |
|
(C++11) | проверяет, больше ли первый аргумент с плавающей точкой второго (функция) |
|
(C++11) | проверяет, больше ли или равен ли первый аргумент с плавающей точкой второму (функция) |
|
(C++11) | проверяет, меньше ли первый аргумент с плавающей точкой второго (функция) |
|
(C++11) | проверяет, меньше ли или равен ли первый аргумент с плавающей точкой второму (функция) |
|
(C++11) | проверяет, меньше или больше ли первый аргумент с плавающей точкой второго (функция) |
|
(C++11) | проверяет, являются ли два значения с плавающей точкой неупорядоченными (функция) |
Типы
Определён в заголовке <cstdlib> |
|
|---|---|
структурный тип, возвращаемый std::div (псевдоним типа) |
|
структурный тип, возвращаемый std::ldiv (псевдоним типа) |
|
|
(C++11) | структурный тип, возвращаемый std::lldiv (псевдоним типа) |
Определён в заголовке <cinttypes> |
|
|
(C++11) | структурный тип, возвращаемый std::imaxdiv (псевдоним типа) |
Определён в заголовке <cmath> |
|
|
float_t
(C++11) | наиболее эффективный тип с плавающей точкой шириной не менее float (псевдоним типа) |
|
double_t
(C++11) | наиболее эффективный тип с плавающей точкой шириной не менее double (псевдоним типа) |
Макроконстанты
Определён в заголовке <cmath> |
|
|---|---|
|
(C++11)(C++11) | обозначают значение переполнения соответственно для float, double и longdouble (макроконстанта) |
|
(C++11)(C++11)(C++11) | определяет механизм обработки ошибок, используемый общими математическими функциями (макроконстанта) |
Определён в заголовке <cmath> (устарело в C++26) |
|
Определён в заголовке <cfloat> (начиная с C++26) |
|
|
(C++11) | вычисляется как положительная бесконечность (если существует) (макроконстанта) |
|
(C++11) | вычисляется как тихий NaN типа float (если существует) (макроконстанта) |
Определён в заголовке <cfloat> |
|
|
(C++26) | вычисляется как сигнальный NaN типов float, double и longdouble соответственно (если существует) (макроконстанта) |
Классификация |
|
Определён в заголовке <cmath> |
|
|
(C++11)(C++11)(C++11)(C++11)(C++11) | обозначают категорию значения с плавающей точкой (макроконстанта) |
Примечания
| Макрос проверки поддержки возможностей | Значение | Стандарт | Возможность |
|---|---|---|---|
__cpp_lib_constexpr_cmath | 202202L | (C++23) | constexpr для математических функций, не зависящих от среды вычислений с плавающей точкой, в <cmath> и <cstdlib> |
202306L | (C++26) | constexpr для большинства математических функций в <cmath> |
См. также
| Специальные математические функции | |
| Документация по C для общих математических функций |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/numeric/math