用arctanx求∏的值
一、问题描述:
编写程序求∏的值,公式如下:
∏ = 16arctan(1/5) - 4arctan(1/239)
arctanx = x - x3/3 + x5/5 - x7/7 + …直到级数某项绝对值不大于10-15为止;∏和x均为double型
二、设计思路:
1.写一个arctan函数;
2.根据公式求∏;
3.输出∏。
三、流程图:
四、伪代码实现:
//arctan函数 e<-x i<-1 r<-0 while e/i>1e-15 do f=e/i if i%4==1 then r=r+f else then r=r-f e=e*x*x i=i+2 end return r //主函数 a=16arctan(1/5) b=4arctan(1/239) PI=a-b
五、代码实现:
1 #include <iostream> 2 using namespace std; 3 4 double arctan(double x) 5 { 6 double sqr = x * x; 7 double e = x; 8 double r = 0; 9 int i = 1; 10 while (e / i > 1e-15) 11 { 12 double f = e / i; 13 r = (i % 4 == 1) ? r + f : r - f; 14 e = e * sqr; 15 i += 2; 16 } 17 return r; 18 } 19 20 int main() 21 { 22 double a = 16.0 * arctan(1 / 5.0); 23 double b = 4.0 * arctan(1 / 239.0); 24 cout << "PI=" << a - b << endl; 25 return 0; 26 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统