đây là bài tính cos(x) với espilon nhập từ bàn phím của em.
kg bik sao so với hàm cos gốc lại có sai số và 1 số kq không khớp. vậy là code của em có vấn đề ạ?
ai giúp em sửa với. thanks trước lun.

#include <stdio.h>
#include <conio.h>
#include <math.h>


float giaithua(float a)
{ float i=0; float s=1;
while(++i<=a) s*=i;
return s;}


float nhap(char c)
{ float a;
do { printf("Nhap %c: ",c); scanf("%f",&a); }
while(a<0);
return a; }


float tinhcos(float a,float b)
{ float s=1,x;
x=a-1.0*2*3.14*(int)(a/(2*3.14));
for(float i=1;i<=b;i++)
s+=1.0*pow(-1,i)*pow(x,2*i)/giaithua(2*i);
return s; }


main()
{ float x,n,a,s=1;
x=nhap('x');
do { printf("Nhap n: "); scanf("%f",&n); } while(n<=0);
printf("cos(%.0f)=%.8f",x,tinhcos(x,n));
printf("\nmay tinh: %.8f",cos(x));
getch();
}