Hàm asin() cho số phức tính arc sine (sine nghịch đảo) của số phức. Định nghĩa trong <complex>.
Code ví dụ
#include <iostream>
#include <complex>
using namespace std;
int main() {
complex<double> c1(5, 2); // 5 + 2i
cout << "asin(" << c1 << ") = " << asin(c1) << endl;
return 0;
}
Kết quả
asin((5,2)) = (1.18423,2.37055)
Giải thích
Kết quả: phần thực ≈ 1.18423, phần ảo ≈ 2.37055 (radian).
Công thức toán học
asin(z) = -i * ln(i*z + √(1-z²))
Trong đó i là đơn vị ảo, ln là log tự nhiên phức, √ là căn bậc hai phức.
Ví dụ mở rộng
#include <iostream>
#include <complex>
#include <iomanip>
using namespace std;
int main() {
complex<double> z(0.5, 0);
cout << fixed << setprecision(6);
cout << "asin(0.5) = " << asin(z) << endl; // ~0.523599 (pi/6)
complex<double> z2(2, 0); // Ngoài miền [-1,1] của real asin
cout << "asin(2) = " << asin(z2) << endl; // Có phần ảo
return 0;
}
Kết quả
asin(0.5) = (0.523599,0.000000) asin(2) = (1.570796,1.316958)
Lưu ý: asin của số thực > 1 cho kết quả phức (có phần ảo).