Hàm asin () trả về cung sin (sin nghịch đảo) của một số tính bằng radian.
Các asin()
chức năng phải mất một đối số duy nhất (1 ≧ x ≧ -1), và trả về sin arc trong radian.
Các asin()
chức năng được bao gồm trong tập tin tiêu đề.
asin () Nguyên mẫu
đôi asin (kép x);
Để tìm arc sin của loại int
, float
hoặc long double
, bạn có thể chuyển đổi một cách rõ ràng các loại để double
sử dụng nhà điều hành đúc.
int x = 0; kết quả kép; result = asin (double (x));
Ngoài ra, hai hàm asinf () và asinl () đã được giới thiệu trong C99 để hoạt động cụ thể với kiểu float
và long double
tương ứng.
float asinf (float x); asinl kép dài (dài kép x);
asin () Tham số
Các asin()
chức năng phải mất một đối số duy nhất trong khoảng (-1, +1). Đó là vì giá trị của sin nằm trong khoảng 1 và -1.
Tham số | Sự miêu tả |
---|---|
giá trị gấp đôi | Cần thiết. Giá trị nhân đôi giữa - 1 và +1. |
asin () Giá trị trả lại
Các asin()
hàm trả về giá trị trong khoảng (-π / 2, + π / 2) tính bằng radian. Nếu tham số được truyền cho asin()
hàm nhỏ hơn -1 hoặc lớn hơn 1, hàm trả về NaN (không phải số).
Tham số (x) | Giá trị trả lại |
---|---|
x = (-1, +1) | (-π / 2, + π / 2) tính bằng radian |
-1> x hoặc x> 1 | NaN (không phải số) |
Ví dụ 1: Hàm asin () với các tham số khác nhau
#include #include int main() ( // constant PI is defined const double PI = 3.1415926; double x, result; x = -0.5; result = asin(x); printf("Inverse of sin(%.2f) = %.2lf in radians", x, result); // converting radians to degree result = asin(x)*180/PI; printf("Inverse of sin(%.2f) = %.2lf in degrees", x, result); // paramter not in range x = 1.2; result = asin(x); printf("Inverse of sin(%.2f) = %.2lf", x, result); return 0; )
Đầu ra
Nghịch đảo của sin (-0,50) = -0,52 tính bằng radian Nghịch đảo sin (-0,50) = -30,00 độ Nghịch đảo sin (1,20) = nan
Ví dụ 2: Hàm asinf () và asinl ()
#include #include int main() ( float fx, fasinx; long double lx, ldasinx; // arc sinine of type float fx = -0.505405; fasinx = asinf(fx); // arc sinine of type long double lx = -0.50540593; ldasinx = asinf(lx); printf("asinf(x) = %f in radians", fasinx); printf("asinl(x) = %Lf in radians", ldasinx); return 0; )
Đầu ra
asinf (x) = -0,529851 tính bằng radian asinl (x) = -0,529852 tính bằng radian