正弦函數(shù)是三角函數(shù)的一種.
成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的臨澤網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
定義:對(duì)于任意一個(gè)實(shí)數(shù)x都對(duì)應(yīng)著唯一的角(弧度制中等于這個(gè)實(shí)數(shù)),而這個(gè)角又對(duì)應(yīng)著唯一確定的正弦值sin
x,這樣,對(duì)于任意一個(gè)實(shí)數(shù)x都有唯一確定的值sin
x與它對(duì)應(yīng),按照這個(gè)對(duì)應(yīng)法則所建立的函數(shù),表示為f(x)=sin
x,叫做正弦函數(shù)。
在c語言當(dāng)中,sin
函數(shù)在標(biāo)準(zhǔn)庫math.h當(dāng)中。注意其輸入?yún)?shù)單位是弧度,將角度轉(zhuǎn)換為弧度,請(qǐng)將角度乘以
π/180。
功
能:
正弦函數(shù)
用
法:
double
sin(double
x);
例程:
#include
#include
int
main(void)
{
double
result,
x
=
0.5;
result
=
sin(x);
printf("the
sin()
of
%lf
is
%lf\n",
x,
result);
return
0;
}
sinx函數(shù)
#includemath.h
int sinx(float x){
int n=1;
double sum ,term;
sum=x;
term=x;
do{
term=-term*x*x/((n+1)*(n+2));
sum=sum+term;
n=n+2;
}while (fabs(term)=1e-5);
if(sum0)
return 1;
else if(sum0)
return -1;
else
return 0;
}
完整的包含sinx函數(shù)和調(diào)用其的主函數(shù)的C語言程序如下
#includestdio.h
#includemath.h
int sinx(float x){
int n=1;
double sum ,term;
sum=x;
term=x;
do{
term=-term*x*x/((n+1)*(n+2));
sum=sum+term;
n=n+2;
}while (fabs(term)=1e-5);
if(sum0)
return 1;
else if(sum0)
return -1;
else
return 0;
}
int main(){
float x;
printf("請(qǐng)輸入弧度值x:");
scanf("%f",x);
printf("%d",sinx(x));
return 0;
}
#include "graphics.h"
#include stdio.h
#include conio.h
#include math.h
void main()
{
int GD,GM;
int i,a,val;
GD=DETECT;
initgraph(GD,GM,"");
printf("請(qǐng)輸入半幅高度10-200: ");
scanf("%d",a);
setfillstyle(SOLID_FILL,WHITE);
bar(0,0,639,479);
setcolor(BLACK);
line(20,20,20,459); // y軸
line(15,25,20,20);
line(25,25,20,20);
outtextxy(16,10, "Y");
line(20,239,620,239); // x軸
line(615,234,620,239);
line(615,244,620,239);
outtextxy(625,234, "X");
setcolor(RED);
for(i=0;i560;i=i+2)//隔點(diǎn)輸出*,可以根據(jù)梳密需要調(diào)整 /
{
val=a*sin(i*4*3.14159/560);
outtextxy(i+20,239+val,"*");
}
getch();
closegraph();
}
首先,你的測(cè)試輸入和測(cè)試輸出的數(shù)據(jù)是對(duì)應(yīng)不上的,你寫錯(cuò)信息了!
輸入 3.1415026, 3 的時(shí)候,輸出才是 -0.07522 。
好了,正確的參考代碼如下:
#include?stdio.h
double?power(double?x,?int?n);?//?計(jì)算乘方的函數(shù)
double?fact(int?n);????????????//??計(jì)算階乘的函數(shù)
int?main(int?argc,?char?const?*argv[])
{
double?x,?s;
int?n;
int?sign?=?1;?//正負(fù)號(hào)開關(guān)變量,初始狀態(tài)為正
printf("Please?input?a?decimal?number?x?,?a?postive?int?number?n??:\n");
scanf("%lf%d",?x,?n);
for?(int?i?=?0;?i?=?n;?i++)
{
s?+=?sign?*?power(x,?2?*?i?+?1)?/?fact(2?*?i?+?1);
sign?=?-sign;
}
printf("x?=?%g,?n?=?%d,?s?=?%.5lf?\n",?x,?n,?s);
return?0;
}
//計(jì)算x^n
double?power(double?x,?int?n)
{
double?p?=?1;
//??這樣的循環(huán)條件,很簡(jiǎn)潔。因?yàn)楹瘮?shù)傳入的是形參,也不會(huì)對(duì)main的變量造成影響。
for?(;?n--;)
{
p?*=?x;
}
return?p;
}
//??計(jì)算n!
double?fact(int?n)
{
double?f?=?1;
//??這樣的循環(huán)條件,很簡(jiǎn)潔。因?yàn)楹瘮?shù)傳入的是形參,也不會(huì)對(duì)main的變量造成影響。
for?(;?n;)
{
f?*=?n--;
}
return?f;
}
測(cè)試截圖:(分別測(cè)試了角度為 180度、90度、45度的弧度值)
輸入和輸出語句,你不想要這么多的提示信息的話,自己修改一下就可以了。
如有幫助,煩請(qǐng)點(diǎn)采納,謝謝!
文章題目:包含sinx函數(shù)c語言的詞條
標(biāo)題網(wǎng)址:http://jinyejixie.com/article48/dochoep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、自適應(yīng)網(wǎng)站、網(wǎng)站排名、網(wǎng)站設(shè)計(jì)、定制網(wǎng)站、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)