Namespaces
Variants

Numerics library

From cppreference.net

La biblioteca de numéricos de C++ incluye funciones y tipos matemáticos comunes, así como arreglos numéricos optimizados y soporte para generación de números aleatorios.

Contenidos

Funciones y tipos matemáticos

Funciones matemáticas comunes

El encabezado <cmath> proporciona funciones matemáticas estándar de la biblioteca C como std::fabs , std::sqrt , y std::sin .

Funciones matemáticas especiales (desde C++17)

El encabezado <cmath> también proporciona varias funciones matemáticas especiales como std::beta , std::hermite , y std::cyl_bessel_i .

Constantes matemáticas (desde C++20)

El encabezado <numbers> proporciona varias constantes matemáticas, como std::numbers::pi o std::numbers::sqrt2

Algoritmos básicos de álgebra lineal (desde C++26)

El encabezado <linalg> proporciona algoritmos básicos de álgebra lineal que están basados en BLAS.

Tipos de datos paralelos (desde C++26)

El encabezado <simd> proporciona tipos portátiles para declarar explícitamente paralelismo de datos y estructurar datos para un acceso SIMD más eficiente.

Aritmética de números complejos

Definido en el encabezado <complex>
un tipo de número complejo
(plantilla de clase)

Arreglos numéricos

Definido en el encabezado <valarray>
arreglos numéricos, máscaras de arreglo y segmentos de arreglo
(plantilla de clase)

Algoritmos numéricos

El encabezado <numeric> proporciona los siguientes algoritmos numéricos:

Operaciones de factor (desde C++17)

Definido en el encabezado <numeric>
(C++17)
calcula el máximo común divisor de dos enteros
(plantilla de función)
(C++17)
calcula el mínimo común múltiplo de dos enteros
(plantilla de función)

Operaciones de interpolación (C++20)

Definido en el encabezado <numeric>
(C++20)
punto medio entre dos números o punteros
(plantilla de función)
Definido en el encabezado <cmath>
(C++20)
función de interpolación lineal
(función)

Aritmética de saturación (desde C++26)

Definido en el encabezado <numeric>
(C++26)
operación de adición con saturación en dos enteros
(plantilla de función)
(C++26)
operación de sustracción con saturación en dos enteros
(plantilla de función)
(C++26)
operación de multiplicación con saturación en dos enteros
(plantilla de función)
(C++26)
operación de división con saturación en dos enteros
(plantilla de función)
devuelve un valor entero limitado al rango de otro tipo entero
(plantilla de función)

Operaciones numéricas

Definido en el encabezado <numeric>
(C++11)
llena un rango con incrementos sucesivos del valor inicial
(plantilla de función)
llena un rango con incrementos sucesivos del valor inicial
(objeto función de algoritmo)
suma o pliega un rango de elementos
(plantilla de función)
(C++17)
similar a std::accumulate , excepto fuera de orden
(plantilla de función)
aplica un invocable, luego reduce fuera de orden
(plantilla de función)
calcula el producto interno de dos rangos de elementos
(plantilla de función)
calcula las diferencias entre elementos adyacentes en un rango
(plantilla de función)
calcula la suma parcial de un rango de elementos
(plantilla de función)
similar a std::partial_sum , incluye el elemento de entrada i ésimo en la suma i ésima
(plantilla de función)
similar a std::partial_sum , excluye el elemento de entrada i ésimo de la suma i ésima
(plantilla de función)
aplica un invocable, luego calcula un escaneo inclusivo
(plantilla de función)
aplica un invocable, luego calcula un escaneo exclusivo
(plantilla de función)

Misceláneos

Generación de números pseudoaleatorios

El encabezado <random> define generadores de números pseudoaleatorios y distribuciones numéricas . El encabezado <cstdlib> también incluye generación de números aleatorios estilo C mediante std::srand y std::rand .

Entorno de punto flotante (desde C++11)

El encabezado <cfenv> define banderas y funciones relacionadas con el estado excepcional de punto flotante , como desbordamiento y división por cero.

Manipulación de bits (desde C++20)

El encabezado <bit> proporciona varias plantillas de funciones para acceder, manipular y procesar bits individuales y secuencias de bits. El orden de bytes ( endianness ) de los tipos escalares puede inspeccionarse mediante la facilidad std:: endian .

Aritmética de enteros verificada (desde C++26)

El encabezado de compatibilidad C <stdckdint.h> proporciona varias plantillas de función para aritmética entera verificada.

Definido en el encabezado <stdckdint.h>
(C++26)
operación de suma verificada en dos enteros
(plantilla de función)
(C++26)
operación de resta verificada en dos enteros
(plantilla de función)
(C++26)
operación de multiplicación verificada en dos enteros
(plantilla de función)

Véase también

Documentación de C para Numerics