Функция acos () возвращает арккосинус (обратный косинус) числа в радианах.
acos()
Функция принимает один аргумент (1 ≧ х ≧ -1), и возвращает арккосинус в радианах.
acos()
Функция включена в файл заголовка.
acos () Прототип
двойной акос (двойной х);
Чтобы найти арккосинус типа int
, float
или long double
, вы можете явно преобразовать тип в double
using оператор приведения.
int x = 0; двойной результат; результат = acos (double (x));
Кроме того, в C99 были введены две функции acosf () и acosl () для работы с типами float
и long double
соответственно.
float acosf (float x); длинный двойной акосл (длинный двойной х);
acos () Параметр
acos()
Функция принимает один аргумент в диапазоне (-1, +1). Это потому, что значение косинуса находится в диапазоне от 1 до -1.
Параметр | Описание |
---|---|
двойное значение | Необходимые. Двойное значение от -1 до +1 включительно. |
acos () Возвращаемое значение
Эти acos()
функции возвращают значение в диапазоне (0.0, я) в радианах. Если переданный в acos()
функцию параметр меньше -1 или больше 1, функция возвращает NaN (не число).
Параметр (x) | Возвращаемое значение |
---|---|
х = (-1, +1) | (0, π) в радианах |
-1> x или x> 1 | NaN (не число) |
Пример 1: функция acos () с разными параметрами
#include #include int main() ( // constant PI is defined const double PI = 3.1415926; double x, result; x = -0.5; result = acos(x); printf("Inverse of cos(%.2f) = %.2lf in radians", x, result); // converting radians to degree result = acos(x)*180/PI; printf("Inverse of cos(%.2f) = %.2lf in degrees", x, result); // paramter not in range x = 1.2; result = acos(x); printf("Inverse of cos(%.2f) = %.2lf", x, result); return 0; )
Вывод
Обратный cos (-0,50) = 2,09 в радианах Обратный cos (-0,50) = 120,00 в градусах Обратный cos (1,20) = nan
Пример 2: функции acosf () и acosl ()
#include #include int main() ( float fx, facosx; long double lx, ldacosx; // arc cosine of type float fx = -0.505405; facosx = acosf(fx); // arc cosine of type long double lx = -0.50540593; ldacosx = acosf(lx); printf("acosf(x) = %f in radians", facosx); printf("acosl(x) = %Lf in radians", ldacosx); return 0; )
Вывод
acosf (x) = 2,100648 в радианах acosl (x) = 2,100649 в радианах