用C语言求sinx的近似值
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/10 13:33:56
![用C语言求sinx的近似值](/uploads/image/f/6248152-64-2.jpg?t=%E7%94%A8C%E8%AF%AD%E8%A8%80%E6%B1%82sinx%E7%9A%84%E8%BF%91%E4%BC%BC%E5%80%BC)
第一空pi=0第二空pi=pi+t第三空pi=pi*4这是利用了一个求pi的公式:pi/4=1-1/3+1/5-1/7.
你这程序存在很多语法错误例如单精度浮点格式符是%f,不是f%,求阶乘不能用!,下面是我的程序,#include#includeintjiecheng(intx);//递归求阶乘main(){doubl
不知道题目的目的是考读写格式还是计算.假定是计算,程序如下:#include#include#includedoublefuncos(doublee,doublex){doublesum=1.0,te
#include#includemain(){doublet,pi;longintn,s;t=1.0;n=1;s=1;pi=0.0;while(fabs(t)>=1e-6){pi=pi+t;n=n+2
函数里,i没有赋初值.去掉函数里的scanf("%d",&e);因为你从主函数输入了.intmain(void){doublee,sum;doublefunpi(doublee);scanf("%lf
以下程序测试无措:#includemain(){doublepi=0,i=1,j=1,x;do{x=j/i;j*=-1;i+=2;pi+=x;}while(x>1e-6||x
给,已经编译运行确认:#include#include#includedoubleFactorial(intn)//求?乘{inti=0;doublefactorical=1;if(n==0)retu
/*sinx=x-x^3/3!+x^5/5-x^7/7!...*/#include#include#defineACCURARY0.00000001main(){\x09inti=1,j=1,k,n=
//用sinx=x-x^3/3!+x^5/5!……+(-1)^(n-1)*(x^(2*n-1)/(2*n-1)!#include#includedoublepower(doublex,intn){if
#include#includevoidmain(){longfloatx,s=0;intn,i,k,a=1,b;printf("Inputx,n:");scanf("%lf,%d",&x,&n);f
公式为Pi=1-1/2+1/4-1/6+1/8+……+1/n,C语言代码如下:#include<stdio.h>voidmain(){inti,j=1;doublepi=0;for(i=1
publicstaticdoublesquareRoot(doublen){doublex=1;doubletemp=1;do{temp=x;//保存上一次计算的值x=0.5*(x+n/x);//这个
在c语言编辑器运行一下不就知道了再问:关键是我不会编这样的程序啊,帮帮忙吧,老师急着收作业呢,求求帮帮啦!
//y=x+x*x*x/3*1!+x*x*x*x*x/5*2!+x*x*x*x*x*x*x/7*3!+.令x=0.5,1.0,2.0,3.0,取前十项之和分别计算Y的值.//即:y=求和:(x的2n-
for(n=1;n
把A换成double或者float都行
亲都出来了...这个要填的是一个循环结束的标志这个标志你可以让产生的t无限的接近0所以,你可以用t>=1e-6当然因为这里可能是负数,所以加一个绝对值.就像楼上所说你也可以把n到达无限大(也就是一个很
首先,我们知道sin(x)=sin(x+k*2pi),那么,我们首先去x1=x%2pi.这样做的目的,是为了让表达式在精度要求范围内,尽可能的有比较少的项.然后循环累加,跳出循环的条件是最后一项的值小
num=m*(4/(2*n-1));改为num=m*(4.0/(2*n-1));试试再问:!!!!!哦哦,还要把m=pow((-1),(n+1));放到循环里面
#include#includeintmain(){doublex,u,t;inti,k=1;doublea=1.0,b=1.0;doublec=1.0,s=0.0,s0=0;scanf("%lf%l