1.需要包含頭文件#includemath.h

創新互聯成立十載來,這條路我們正越走越好,積累了技術與客戶資源,形成了良好的口碑。為客戶提供成都做網站、成都網站制作、網站策劃、網頁設計、國際域名空間、網絡營銷、VI設計、網站改版、漏洞修補等服務。網站是否美觀、功能強大、用戶體驗好、性價比高、打開快等等,這些對于網站建設都非常重要,創新互聯通過對建站技術性的掌握、對創意設計的研究為客戶提供一站式互聯網解決方案,攜手廣大客戶,共同發展進步。
2.使用角度計算時需要先轉換為弧度值
3.pi,獲取pi的值,這里用到了acos,反余弦函數,值域是0-pi,取值范圍是-1到1
Ps:反余弦沒學過,百度上搜的
#include stdio.h
#include math.h
double toAngle(int);
//測試值
int angle = 30;
int main()
{
double p = sin (? toAngle( angle) );
printf(" sin : %d = %f" , angle ,p);
}
//將角度轉為弧度
double toAngle(int angle)
{
//求pi,3.141593
double pi = acos(-1);
printf(" get pi : %f\n",pi);
return angle* pi/180;
}
計算反正切函數(使用歐拉變換公式,精度很高),反正切函數的級數展開公式:
f(x) = x - x^3/3 + x^5/5 +...+ (-1)^k * x^(2k+1)/(2k + 1)+...
當|x| 1時,級數絕對值發散,無法直接使用歐拉公式計算。因此可以通過下面的公式
進行等價轉換之后再進行計算。
等價轉換公式:
a) ATan(1/x) = Pi/2 - ATan(x)
b) ATan(-x) = - ATan(x)
特殊情況
0 = ArcTan(0)
Pi/2 = ArcTan(無窮大)
//
// 歐拉公式
//
// sum是和,term是通項值,jterm初始為1,以后按1遞增。wrksp是工作單元,視jterm的
// 最大值而定。
//
void eulsum(int nterm,double *sum,double term,int jterm,double wrksp[])
{
double tmp,dum;
if(jterm == 1)
{
nterm = 1;
wrksp[1] = term;
*sum = 0.5 * term;
}
else
{
tmp = wrksp[1];
wrksp[1] = term;
for(int j=1; j = nterm; j++)
{
dum = wrksp[j+1];
wrksp[j+1] = 0.5 * (wrksp[j] + tmp);
tmp = dum;
}
if(fabs(wrksp[nterm + 1]) = fabs(wrksp[nterm]))
{
*sum = *sum + 0.5 * wrksp[nterm + 1];
nterm = nterm + 1;
}
else
{
*sum = *sum + wrksp[nterm + 1];
}
}
}
級數計算就不用我給代碼了吧。
在math.h這個函數庫里面有cos(double x)這個函數,返回x的余弦值!
唉,程序寫得相當不規范,看著好頭疼;函數應該放在main外面……
#includestdio.h
#includemath.h
double jiecheng(int n)
{
int i;
double sum=1;
for(i=1;i=n;i++)
{
sum=sum*i;
}
return sum;
}
double fang(int x,int n)
{
double sum;
sum=pow(x,n);
return sum;
}
int main(void)
{
int j=1;
double x,e,count=0;
printf("e: ");
scanf("%lf",e);
printf("x: ");
scanf("%lf",x);
do{
count=count+(pow(-1,j-1))*fang(x,2*(j-1))/jiecheng(2*(j-1));
}while (fang(x,2*(j-1))/jiecheng(2*(j-1))e);
printf("%lf",count);
}
//可以運行了,但是答案輸出來還是有問題……自己查查你的算法,我就不看了,暈的慌
網站題目:余弦函數圖像c語言 余弦函數的函數圖像
本文網址:http://www.yijiale78.com/article4/docjsoe.html
成都網站建設公司_創新互聯,為您提供全網營銷推廣、建站公司、網站維護、企業網站制作、品牌網站建設、企業建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯