función acosh() en C++ STL

acosh () es una función incorporada en C++ STL que devuelve el coseno hiperbólico inverso de un ángulo dado en radianes. La función pertenece al archivo de encabezado <cmath> .

Sintaxis: 

acosh(data_type x)

Parámetro: la función acepta un parámetro obligatorio x que especifica el ángulo hiperbólico inverso en radianes que debe ser mayor o igual a 1. Si el argumento es menor que 1, se devuelve -nan. El parámetro puede ser de tipo de datos double, float o long double. 

Retorno: La función acosh() devuelve el seno hiperbólico inverso del argumento en radianes que está en el rango [0, inf].

Según el estándar C++ 11 , hay varios prototipos disponibles para la función acosh() ,

Tipo de datos Prototipo
para doble doble acosh(doble x);

Se requiere una conversión explícita de (int, float o long double) a double,

Tipo de datos Prototipo
para int

 int a = 0;

doble b = acosh(doble(a));

para flotador

flotar a = 0;

doble b = acosh(doble(a));

Para doble largo

largo doble a = 0;

doble b = acosh(doble(a));

Los siguientes programas ilustran el enfoque anterior: 

Ejemplo 1:

CPP

// C++ program to demonstrate
// the acosh() function
#include <bits/stdc++.h>
using namespace std;
 
// Driver Code
int main()
{
    double x = 50.0;
 
    // Function call to calculate acosh(x) value
    double result = acosh(x);
 
    cout << "acosh(50.0) = " << result << " radians"
         << endl;
    cout << "acosh(50.0) = " << result * 180 / 3.141592
         << " degrees" << endl;
    return 0;
}
Producción

acosh(50.0) = 4.60507 radians
acosh(50.0) = 263.851 degrees

Ejemplo 2: 

CPP

// C++ program to demonstrate
// the acosh() function
#include <bits/stdc++.h>
using namespace std;
 
// Driver Code
int main()
{
    int x = 40.0;
 
    // Function call to calculate acosh(x) value
    double result = acosh(x);
 
    cout << "acosh(40.0) = " << result << " radians"
         << endl;
    cout << "acosh(40.0) = " << result * 180 / 3.141592
         << " degrees" << endl;
    return 0;
}
Producción

acosh(40.0) = 4.38187 radians
acosh(40.0) = 251.063 degrees

Si pasamos un valor negativo (valor menor que 1), la función devuelve NaN (no un número).

Ejemplo 3:

C++

// C++ program to demonstrate
// the acosh() function
// value less than 1
#include <bits/stdc++.h>
using namespace std;
 
// Driver Code
int main()
{
    double x = -50.0;
 
    // Function call to calculate acosh(x) value
    double result = acosh(x);
 
    cout << "acosh(-50.0) = " << result << " radians"
         << endl;
    cout << "acosh(-50.0) = " << result * 180 / 3.141592
         << " degrees" << endl;
    return 0;
}
Producción

acosh(-50.0) = -nan radians
acosh(-50.0) = -nan degrees

Errores y excepciones: la función no devuelve ninguna función coincidente para la llamada al error cuando se pasa una string o un carácter como argumento.

Ejemplo: 

CPP

// C++ program to demonstrate
// the acosh() function
#include <bits/stdc++.h>
using namespace std;
 
// Driver Code
int main()
{
    string x = "gfg";
 
    // Function call to calculate acosh(x) value
    double result = acosh(x);
 
    cout << "acosh(50.0) = " << result << " radians"
         << endl;
    cout << "acosh(50.0) = " << result * 180 / 3.141592
         << " degrees" << endl;
    return 0;
}

Error:

prog.cpp: In function ‘int main()’:
prog.cpp:12:28: error: no matching function for call to ‘acosh(std::__cxx11::string&)’
     double result = acosh(x);

El programa anterior genera un error si no se pasa como argumento ninguna función coincidente para la llamada como string .

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 pawan_asipu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *