Al igual que los números enteros, C++ 11 introdujo algunas funciones básicas incorporadas para manejar cálculos matemáticos simples de números de coma flotante necesarios para la programación diaria y la programación competitiva. Estas funciones pertenecen al archivo de cabecera <cmath> . En este artículo se describen algunas de las funciones introducidas.
1. fmod() : esta función se usa para devolver el resto (módulo) de 2 números de punto flotante mencionados en sus argumentos. El cociente calculado se trunca .
Sintaxis:
fmod(a,b); // a, b are 2 floating point numbers
Ejemplo:
C++
// C++ code to demonstrate working of fmod() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b, c; // Initializing values a = 9.6; b = 3.5; // using fmod() to compute the remainder // computes 2 as quotient (truncated) // returns 2.6 as remainder c = fmod(a, b); cout << "The remainder computed using fmod() is : " << c; cout << endl; }
The remainder computed using fmod() is : 2.6
2. resto() : esta función también se usa para devolver el resto (módulo) de 2 números de punto flotante mencionados en sus argumentos. El cociente calculado se redondea .
Sintaxis:
remainder(a,b); // a, b are 2 floating point numbers
Ejemplo:
C++
// C++ code to demonstrate working of remainder() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b, c; // Initializing values a = 9.6; b = 3.5; // using remainder() to compute the remainder // computes 3 as quotient (rounded) // returns -0.9 as remainder c = remainder(a, b); cout << "The remainder computed using remainder() is : " << c; cout << endl; }
The remainder computed using remainder() is : -0.9
3. remquo() : esta función devuelve el resto y también almacena el resto en la referencia de variable pasada como argumento. Esta función toma 3 argumentos, numerador, denominador y referencia de la variable donde se tiene que almacenar el cociente.
Sintaxis:
remquo(a,b,&quo); // a, b and c are three arguments
Ejemplo:
CPP
// C++ code to demonstrate working of remquo() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b, f; int g; // Initializing values a = 9.6; b = 3.5; // using remquo() to return quotient and remainder // quotient stored in g f = remquo(a, b, &g); cout << "The remainder part of " << a << "/" << b << " is : " << f; cout << endl; cout << "The quotient part of " << a << "/" << b << " is : " << g; cout << endl; }
The remainder part of 9.6/3.5 is : -0.9 The quotient part of 9.6/3.5 is : 3
4. copysign() : esta función devuelve un número con la magnitud del primer argumento y el signo del segundo argumento .
Sintaxis:
copysign(a, b); // a and b are arguments
Ejemplo:
C++
// C++ code to demonstrate working of copysign() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b; // Initializing values a = 9.6; b = -3.5; // using copysign() cout << "The value returned after copysigning is : "; cout << copysign(a, b); cout << endl; }
The value returned after copysigning is : -9.6
5. nextafter() : esta función calcula el siguiente valor representable del primer argumento en la dirección del segundo argumento .
Sintaxis:
nextafter(a, b); // a and b are arguments
Ejemplo:
CPP
// C++ code to demonstrate working of nextafter() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b; // Initializing values a = -3.5; b = 0.0; // using nextafter() to compute next approximated value cout << "The next value approximated is : "; cout << nextafter(a, b); }
The next value approximated is : -3.5
6. fmin() : Devuelve el menor de dos argumentos.
Sintaxis:
fmin(a, b); // a and b are arguments
Ejemplo:
C++
// C++ code to demonstrate working of fmin() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b; // initializing values a = 2.5; b = 2.0; // using fmin() to compute smallest of two numbers cout << "The smallest of 2 numbers is : "; cout << fmin(a, b); cout << endl; }
The smallest of 2 numbers is : 2
7. fmax() : Devuelve el mayor de dos argumentos.
Sintaxis:
fmax(a, b); // a and b are arguments
Ejemplo:
C++
// C++ code to demonstrate working of fmax() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b; // initializing values a = 2.5; b = 2.0; // using fmax() to compute maximum of two numbers cout << "The largest of 2 numbers is : "; cout << fmax(a, b); cout << endl; }
The largest of 2 numbers is : 2.5
8. fdim() : Devuelve la diferencia positiva de los números pasados como argumentos.
Sintaxis:
fdim(a, b); // a and b are arguments
Ejemplo:
C++
// C++ code to demonstrate working of fdim() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b; // initializing values a = 2.5; b = 2.0; // using fdim() to compute positive difference of two // numbers cout << "The positive difference of 2 numbers is : "; cout << fdim(a, b); cout << endl; }
The positive difference of 2 numbers is : 0.5
9. fma() : esta función toma 3 argumentos y devuelve el valor “ x*y+z ” multiplicado y sumado después del cálculo.
Sintaxis:
fma(a, b, c); // a, b and c are arguments
Ejemplo:
CPP
// C++ code to demonstrate working of fma() #include <cmath> #include <iostream> using namespace std; // Driver Code int main() { double a, b, c; // initializing values a = 2.5; b = 2.0; c = 2.5; // using fma() to compute multiply-add cout << "The multiply-add of 3 numbers is : "; cout << fma(a, b, c); }
The multiply-add of 3 numbers is : 7.5
Este artículo es una contribución de Manjeet Singh (S. Nandini) . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA