当前位置:首页 » 编程语言 » c语言欧拉公式

c语言欧拉公式

发布时间: 2024-08-10 01:19:55

⑴ 怎样用c语言表示反正弦,反余弦,反正切函数呢

计算反正切函数(使用欧拉变换公式,精度很高),反正切函数的级数展开公式:

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,m;

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++)
{
m = wrksp[j+1];
wrksp[j+1] = 0.5 * (wrksp[j] + tmp);
tmp = m;
}

if(fabs(wrksp[nterm + 1]) <= fabs(wrksp[nterm]))
{
*sum = *sum + 0.5 * wrksp[nterm + 1];
nterm = nterm + 1;
}
else
{
*sum = *sum + wrksp[nterm + 1];
}
}
}

级数计算就不用我给代码了吧。

⑵ c语言程序,欧拉公式求解常微分方程,步长0.01,就是求出100个点,然后

floatdx=0.01;//步长
floatx=0,y=1;//初始值
inti=1;
while(i<100)
{
floatk=y-(2*x)/(3*y);//求斜率,也就是y'
y+=k*dx;
x+=dx;
printf("x=%f,y=%f ",x,y);//输出
i++;
}

⑶ C语言函数,用欧拉公式算三角形面积,看看哪错了

这个是海伦公式。
实现上有两个缺陷,
1,蚂兆没有亮物纳判敬没断输入的三个边长,是否能组成三角形;
2,海伦公式写错了,应该这样子写 area=sqrt(s*(s-a)*(s-b)*(s-c));

热点内容
scratch少儿编程课程 发布:2025-04-16 17:11:44 浏览:628
荣耀x10从哪里设置密码 发布:2025-04-16 17:11:43 浏览:357
java从入门到精通视频 发布:2025-04-16 17:11:43 浏览:75
php微信接口教程 发布:2025-04-16 17:07:30 浏览:300
android实现阴影 发布:2025-04-16 16:50:08 浏览:788
粉笔直播课缓存 发布:2025-04-16 16:31:21 浏览:338
机顶盒都有什么配置 发布:2025-04-16 16:24:37 浏览:204
编写手游反编译都需要学习什么 发布:2025-04-16 16:19:36 浏览:801
proteus编译文件位置 发布:2025-04-16 16:18:44 浏览:357
土压缩的本质 发布:2025-04-16 16:13:21 浏览:583