Η συνάρτηση 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 σε ακτίνια








