[Thuật Toán] Tính Các Hàm Lượng Giác - Cách Học

Công thức tính sin(x) và các hàm lượng giác khác như sau:

lượng giác

VD tính sin(x) , x tính theo radian

#include <stdio.h> #include <stdlib.h> int main() { double sinx, temp, x; // x tinh theo radian int i = 0; scanf("%lf", &x); sinx = temp = x; while (temp > 0.000001 || temp < -0.000001) // lam tron den 5 so thap phan { i++; temp = temp*x/(2*i+1)*x/(2*i); // x^(2i+1)/(2i+1)! if (i%2==0) sinx = sinx + temp; else sinx = sinx - temp; } printf("%.5f",sinx); return 0; }

Có thể do kiểu dữ liệu hoặc một số lý do khác mà chỉ chính xác được đến -27<=x<=27 với x tính theo radian. Ở code trên chúng ta không tính hàm x^(2i+1) và (2i+1)! riêng ra mà tính liền vào temp tức là tính temp = x^(2i+1) / (2i+1)! để tránh tràn số với các số x lớn.

Từ đây chúng ta có thể xây dựng cách tính cho các hàm lượng giác khác.

Tham khảo thêm: Hàm lượng giác

Bạn có thể sẽ thích:

Từ khóa » Hàm Lượng Giác Trong C