acos, acosf, acosl
Calcola l'arcocoseno.
double acos(
double x
);
float acos(
float x
); // C++ only
long double acos(
long double x
); // C++ only
float acosf(
float x
);
long double acosl(
long double x
);
Parametri
- x
Valore compreso tra - 1 e 1, per il quale calcolare l'arcocoseno (il coseno inverso).
Valore restituito
La funzione acos restituisce l'arcocoseno x nell'intervallo da 0 a π radianti.
Per impostazione predefinita, se x è minore di –1 o maggiore di 1, acos restituisce un valore indefinito.
Input |
Eccezione SEH |
Eccezione Matherr |
---|---|---|
± ∞ |
INVALID |
_DOMAIN |
± QNAN, IND |
nessuno |
_DOMAIN |
|x|>1 |
INVALID |
_DOMAIN |
Note
Poiché C++ consente l'overload, è possibile chiamare gli overload di acos che accettano e restituiscono tipi float e long double. In un programma C, acos accetta e restituisce sempre un double.
Requisiti
Routine |
Intestazione obbligatoria |
Intestazioni facoltative |
---|---|---|
acos, acosf, acosl |
<math.h> |
<errno.h> |
Esempio
Questo programma richiede di inserire un valore compreso tra -1 e 1. I valori di input all'esterno di questo intervallo producono i messaggi di errore _DOMAIN. Se un valore valido viene inserito, il programma stampa l'arcoseno e l'arcocoseno di tale valore.
// crt_asincos.c
// arguments: 0
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main( int ac, char* av[] )
{
double x,
y;
errno_t err;
// argument checking
if (ac != 2)
{
fprintf_s( stderr, "Usage: %s <number between -1 and 1>\n",
av[0]);
return 1;
}
// Convert argument into a double value
if ((err = sscanf_s( av[1], "%lf", &x )) != 1)
{
fprintf_s( stderr, "Error converting argument into ",
"double value.\n");
return 1;
}
// Arcsine of X
y = asin( x );
printf_s( "Arcsine of %f = %f\n", x, y );
// Arccosine of X
y = acos( x );
printf_s( "Arccosine of %f = %f\n", x, y );
}
Equivalente .NET Framework
Vedere anche
Riferimenti
atan, atanf, atanl, atan2, atan2f, atan2l
cos, cosf, cosl, cosh, coshf, coshl