acdream1234(Simpson积分)
来源:互联网 发布:淘宝客单品怎么推广? 编辑:程序博客网 时间:2024/05/18 03:40
链接:点击打开链接
题意:给出两个圆柱体的底面半径,一个垂直放置一个水平放置,求相交部分的体积
代码:
#include <math.h>#include <stdio.h>#include <iostream>#include <stdlib.h>#include <algorithm>using namespace std;const double eps=1e-10;double r,R;double f(double x){ return sqrt(r*r-x*x)*sqrt(R*R-x*x);}double simpson(double le,double re){ return (re-le)/6*(f(le)+4*f((le+re)/2)+f(re));}double cal(double le,double re){ //simpson求定积分 double ans,mid; mid=(le+re)/2; ans=simpson(le,re); if(fabs(ans-simpson(le,mid)-simpson(mid,re))<eps) return ans; return cal(le,mid)+cal(mid,re);}int main(){ //从侧视图来分析,可以得出两个圆柱的相交 while(scanf("%lf%lf",&r,&R)!=EOF){ //的截面为矩形,那么就是平行截面面积为已知 if(r>R) //的立体的体积,所以可以直接定积分求解 swap(r,R); //求∫2*√(R^2-x^2)*2*√(r^2-x^2)积分区间为-r到r printf("%.5lf\n",8*cal(0,r)); //化简就是8*∫√(R^2-x^2)*√(r^2-x^2)积分区间为0到r } return 0;}
P.s二重积分直接求出公式V=16/3*min(r,R)^3.....但是为什么过不了......
0 0
- acdream1234(Simpson积分)
- hdu1724(定积分&&Simpson积分)
- Simpson 积分算法
- 关于Simpson积分
- 自适应simpson积分
- HDU 1724 (simpson积分)
- simpson积分公式
- 自适应Simpson积分
- 地狱飞龙 [simpson][积分]
- 自适应simpson 积分
- 学习笔记: 自适应Simpson积分
- hdu 1724 Ellipse simpson积分
- hdu 1071 simpson 求积分
- sgu217:Two Cylinders(simpson积分)
- CSU1806-Toll(Simpson积分)
- 地狱飞龙 【simpson 求积分】
- hdu 1724(Simpson积分)
- 自适应Simpson积分(近似求积分)
- android stadio open recent 在同一窗口打开
- 闭包
- zigbee
- (转)二叉树算法引发的思考:指针参数传递、引用的陷阱
- SparkSQL 入门操作
- acdream1234(Simpson积分)
- java中类加载的全过程及内存图分析
- c3p0和QueryRunner的结合使用,让开发更加简便
- 我学JUC之LockSupport
- N皇后问题
- 【学习笔记】6.包含多个段的程序
- Java从入门到精通阅读笔记(第4版)11
- CCF201612-2
- 【C++数据结构】模板链栈