Η συνάρτηση asin () επιστρέφει το ηχητικό σήμα τόξου (αντίστροφο ημίτονο) ενός αριθμού σε ακτίνια.
Η asin()
συνάρτηση παίρνει ένα μόνο όρισμα (1 ≧ x ≧ -1) και επιστρέφει το τόξο σε ακτίνια.
Η asin()
συνάρτηση περιλαμβάνεται στο αρχείο κεφαλίδας.
πρωτότυπο asin ()
διπλή ασίνη (διπλή x);
Για να βρείτε το ηχητικό σήμα τύπου int
, float
ή long double
, μπορείτε να μετατρέψετε ρητά τον τύπο σε double
χρήση του χειριστή cast.
int x = 0; διπλό αποτέλεσμα; αποτέλεσμα = asin (διπλό (x));
Επίσης, δύο λειτουργίες asinf () και asinl () εισήχθησαν στο C99 για να λειτουργούν ειδικά με τον τύπο float
και long double
αντίστοιχα.
float asinf (float x). μακρύ διπλό ασίνλ (μακρύ διπλό x);
παράμετρος asin ()
Η asin()
συνάρτηση παίρνει ένα μόνο όρισμα στο εύρος (-1, +1). Είναι επειδή η τιμή του ημιτονοειδούς κυμαίνεται μεταξύ 1 και -1.
Παράμετρος | Περιγραφή |
---|---|
διπλή τιμή | Απαιτείται. Διπλή τιμή μεταξύ - 1 και +1. |
asin () Επιστροφή αξία
Οι asin()
συναρτήσεις επιστρέφουν την τιμή στο εύρος (-π / 2, + π / 2) σε ακτίνια. Εάν η παράμετρος που μεταβιβάζεται στη asin()
συνάρτηση είναι μικρότερη από -1 ή μεγαλύτερη από 1, η συνάρτηση επιστρέφει NaN (όχι έναν αριθμό).
Παράμετρος (x) | Αξία επιστροφής |
---|---|
x = (-1, +1) | (-π / 2, + π / 2) σε ακτίνια |
-1> x ή x> 1 | NaN (όχι αριθμός) |
Παράδειγμα 1: συνάρτηση asin () με διαφορετικές παραμέτρους
#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; )
Παραγωγή
Αντίστροφο της αμαρτίας (-0,50) = -0,52 σε ακτίνια Αντίστροφο της αμαρτίας (-0,50) = -30,00 σε μοίρες Αντίστροφο της αμαρτίας (1,20) = nan
Παράδειγμα 2: συνάρτηση asinf () και 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; )
Παραγωγή
asinf (x) = -0,529851 σε ακτίνια asinl (x) = -0,529852 σε ακτίνια