當前位置:首頁 » 編程語言 » 如何用c語言設計sinx
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

如何用c語言設計sinx

發布時間: 2022-05-09 23:24:55

❶ sinX的泰勒公式展開式用c語言怎麼編寫非常急

泰勒展開是這個:sinx=x-x^3/3!+x^5/5!-..
下面給出算20項的程序。

#include"math.h"
#include"stdio.h"
void main()
{
double x=0,y=0,z=1,s=1,mynum=0;
int i=1 ,j=0, k=1;
scanf("x=%f",&x);

for(i=1;i<20;i++)

z=1;k=1;
for(j=1;j<=2*i-1;j++)
{
z=x*z;//算j次方
k=k*j;//算階乘}
s=-j*pow(-1,i);//pow(a,b)是a的b次方
z=z*s/k;

mymun=mynum+z;
}
printf("sinx=x-x^3/3!+x^5/5!-..");
printf("sinx=%f",mynum);
getch();
}

樓上的演算法不對,不是按泰勒展開算的。

❷ 用c語言編寫sin和cos函數,拜託各位大蝦了

double sinx(double x)
{
double result=x,temp=x;
double den=x,fac=1;
int n=1,sign=1;
while((temp>1e-5)||(temp<-1e-5))
{
n++,fac*=n,den*=x;
n++,fac*=n,den*=x;
temp=den/fac;sign=-sign;
result=sign>0?result+temp:result-temp;
}
return result;
}

double cosx(double x)
{
x=1.57079-x;
return sinx(x);
}

main()
{
double a,b,c;
scanf("%lf",&a);
b=sinx(a);
c=cosx(a);
printf("sin(%lf)=%lf,cos(%lf)=%lf",a,b,a,c);
}

❸ 用C語言程序算sinX的值

#include
#include
/*計算n的階乘*/
int factor(int n)
{
if(n==1)
return 1;
else
return factor(n-1)*n;
}
/*得到分子的值*/
double get_numerator(double x,int order)
{
return pow(x,order); //求x^order
}
/*得到分母的值*/
double get_denominator(int n)
{
return factor(n); //求n的階乘
}
/*獲得第n項的符號,即(-1)^n*/
int get_symbol(int n)
{
if(n%2 ==0) //n是偶數
return 1;
else
return -1;
}
int main()
{
int i;
double x;
double sin_x=0;
double tmp=0;
printf("please input the x:\n");
scanf("%lf",&x);
for(i=0;;i++)
{
tmp=sin_x; //暫時保存上一步得到的sin值
sin_x += get_numerator(x,2*i+1)/get_denominator(2*i+1)*get_symbol(i);
if(fabs(sin_x-tmp)<1e-6) //精度滿足要求
break;
}
printf("sin(%lf)=%lf\n",x,sin_x);
return 0;
} /***********************************************************************
學好c語言,首先應該把語言的語法學好,這也是基礎。尤其是注意指針部分,可以說這是c語言的精髓,也是c語言能夠直接操作內存的犀利之處。
其次,應該多練代碼,並且注意代碼的可讀性,規范性。
最好,能夠親身用c語言參加某個項目實踐,畢竟實踐出真知。
至於之後c++或者java的學習,要看自己的發展規劃了。不過學好c語言,絕對對你今後學習其他語言有很大幫助。
*************************************************************************/

❹ 怎樣用C語言編寫x=sinx

你是要用系統庫函數還是……
想用數值方法自己算?
用庫函數就#inclue <math.h>
直接可以調用double sin(double x);
數值方法的話,將sin(x)泰勒展開,
令最末項o(n)<需要的精度。

❺ c語言編程sinx

while(fabs(y)>=1e-6)//去掉分號
printf("sinx的近似值為%lf,sinx的真實值為%lf",sum,sin(x));//是lf

❻ 用C++語言怎麼表示sinx

調用<math.h>或<cmath>頭文件,使用方法是:doublea=sin(x);

x代表弧度,也可以改變a的精度

即可直接使用sin(x),特別注意x應該為弧度制,如果不是弧度制需要轉化為弧度制。

C標准函數庫(C Standard library)是所有符合標準的頭文件(head file)的集合,以及常用的函數庫實現程序,例如I/O 輸入輸出和字元串控制。

(6)如何用c語言設計sinx擴展閱讀:

整數常量是不帶小數的數值,用來表示正負數。例2—2中Ox55、0x55ff、1000000都是c++語言的整數常量。

c++語言的整數常量有三種形式:十進制、八進制、十六迸制。

(1)十進制整數是由不以0開頭的0~9的數字組成的數據。

(2)八進制整數是由以0開頭的0~7的數字組成的數據。

(3)十六進制整數是由以0x或0x開頭的0~9的數字及A~F的字母(大小寫字母均可)組成的數據。

❼ C語言編寫sin函數求教!

  1. C語言中要編寫sin函數,實質上要利用sin的泰勒公式,然後根據泰勒公式,將其中的每一項進行分解,最後用循環,累加計算出最終結果

  2. 下面用for循環實現sin的演算法,程序代碼如下:

#include<stdio.h>

#include<math.h>

void main()

{

int i;

float x,sum,a,b; //sum代表和,a為分子,b為分母

char s;

printf("please input x");

scanf("%f",&x);

s=1;

sum=0;

a=x; //分母賦初值

b=1; //分子賦初值

for(i=1;a/b>=1e-6;i++)

{

sum=sum+s*a/b; //累加一項

a=a*x*x; //求下一項分子

b=b*2*i*(2*i+1); //求下一項分母

s*=-1;

}

printf("sum=%f ",sum);

}

3. 關於上述程序的幾點說明:上述程序的計算結果精確到小數點後六位;上述程序運用了sin的泰勒展開式 sin x=x-x^3/3!+x^5/5! ...... ,程序中將sin泰勒公式中的每一項拆成了分子,分母以及每一項前的符號這三項,以便於每一項的累加

❽ c語言編程,sinx

在寫C語言的程序時,在開頭加上一個頭文件math.h即可。

即可直接使用sin(x),特別注意x應該為弧度制,如果不是弧度制需要轉化為弧度制。

添加頭文件方法:#include<math.h>。

(8)如何用c語言設計sinx擴展閱讀:

在C語言家族程序中,頭文件被大量使用。一般而言,每個C++/C程序通常由頭文件和定義文件組成。頭文件作為一種包含功能函數、數據介面聲明的載體文件,主要用於保存程序的聲明,而定義文件用於保存程序的實現。

C標准函數庫(C Standard library)是所有符合標準的頭文件(head file)的集合,以及常用的函數庫實現程序,例如I/O 輸入輸出和字元串控制。

不像 COBOL、Fortran 和 PL/I等編程語言,在 C 語言的工作任務里不會包含嵌入的關鍵字,所以幾乎所有的 C 語言程序都是由標准函數庫的函數來創建的。

1995年,Normative Addenm 1 (NA1)批准了三個頭文件(iso646.h, wchar.h, and wctype.h)增加到C標准函數庫中。C99標准增加了六個頭文件(complex.h, fenv.h, inttypes.h, stdbool.h, stdint.h, and tgmath.h)。

C11標准中又新增了5個頭文件(stdalign.h, stdatomic.h, stdnoreturn.h, threads.h, and uchar.h)。至此,C標准函數庫共29個頭文件 。

常用的C語言函數庫:

<math.h>,<stdio.h>,<stdlib.h>,<time.h>,<string.h>。

使用方法:#include+<函數庫名>

參考資料來源:網路-C標准函數庫

❾ 怎麼用c語言編寫計算sinX呢

❿ C語言sin怎麼用

C語言sin()用來計算參數x 的正玄值,然後將結果返回。返回-1 至1 之間的計算結果。

例子:

#include <math.h>

main(){

double answer = sin(0.5);

printf("sin(0.5) = %f ", answer);

}

執行

sin(0.5) = 0.479426

C語言sin():

sin()原型:double sin(double x)

sin()角度與弧度:

π=180°

1°=π/180

1(rad)=180/π

角度轉弧度:用角度乘以π/180

弧度轉角度:用弧度乘以180/π,或者用rtod()函數

(10)如何用c語言設計sinx擴展閱讀:

與sin相似的acos函數

函數名: acos

功 能:計算並返回arccos(x)值、要求-1<=X<=1

函數與形參類型:

double acos(x)

double x;

程序例:

#include <stdio.h>

#include <math.h> int main(void)

{

double result;

double x = 0.5; result = acos(x);

printf("The arc cosine of %lf is %lf ", x, result);

return 0;

}