• 问题描述

设计复化辛浦生求积算法,并求函数f(x) = sin(x)在区间[0,1]的积分。

  • 算法思想

把整个区间分成N份,每个小区间用辛浦生公式求解,最后在累加即可。

  • 复化辛浦生求积公式

  • 算法实现
#include <iostream>
#include <math.h>using namespace std;//保存生成的节点横坐标
double dataX[1000];
//保存生成的节点纵坐标
double dataY[1000];
//定义一个数学函数
double function(double x);
//分割区间
void devide(double a,double b,int N);
//复化辛普生求积
double getIntegralValue(double a,double b,int N);int main()
{//产生的节点数double a,b ;int N;char ch = 'n';while(ch != 'y'){cout<<"请输入等分区间数:";cin>>N;cout<<"请输入左右区间范围:";cin>>a;cin>>b;devide(a,b,N);cout<<"积分值为:"<<getIntegralValue(a,b,N)<<endl;cout<<"是否继续?按y退出:";cin>>ch;}return 0;
}
//定义一个数学函数
double function(double x)
{return sin(x);
}
//分割区间
void devide(double a,double b,int N)
{double x;double dX = (b - a) /(N) ;for(int i=0;i<=N;i++){x = a + i * dX;dataX[i] = x;dataY[i] = function(x);}
}
//复化梯形求积
double getIntegralValue(double a,double b,int N)
{double sum = 0;//求2*f(xk)+4*f(k+0.5)的总和,1<= k <= n-1for(int i=1;i<=N-1;i++){sum += 2*dataY[i];}for(int i=1;i<=N;i++){sum +=4*function((dataX[i]+dataX[i-1])/2);}double value =  ((b-a)/(6*N))*(dataY[0] + sum + dataY[N]);return value;
} 
  • 运行截图

复化辛浦生求积算法C++实现相关推荐

  1. 微分求积:复化梯形、复化辛浦生

    复化梯形 将积分区间[a,b]划分n等分,步长,求积节点,在每个小区间上应用梯形公式 然后将它们累加求和,作为所求积分I的近似值. 记 式为复化梯形求积公式,下标n表示将区间n等分. 算法流程 算法代 ...

  2. 【数值分析】微分求积:复化梯形、复化辛浦生

    本科课程参见:<软件学院那些课> 复化梯形 将积分区间[a,b]划分n等分,步长,求积节点,在每个小区间上应用梯形公式 然后将它们累加求和,作为所求积分I的近似值. 记

  3. 复化辛甫生求积法matlab,数值分析习题.doc

    数值分析习题 第一章 绪论 姓名 学号 班级 习题主要考察点:有效数字的计算.计算方法的比较选择.误差和误差限的计算. 1 若误差限为,那么近似数0.003400有几位有效数字?(有效数字的计算) 2 ...

  4. 辛甫生算法c语言,[转载]实变函数,计算方法程序,康托图

    计算方法程序: 1. 秦九韶算法 2.二分法 3.拉格朗日插值 4.埃特金算法 5.复化梯形法 6.复化辛甫生算法 7.二阶龙格库塔方法 8.四阶龙格库塔方法 9.改进的欧拉方法 10.迭代法 11. ...

  5. 自适应复化辛普森公式求积算法(C语言实现)

    自适应复化辛普森公式求积算法(C语言实现) 利用复化辛普森公式求积分自适应步骤 基于C语言实现的代码 利用复化辛普森公式求积分自适应步骤 h为步长,a为积分下限,b为积分上限,f为积分函数,n为划分的 ...

  6. 惊艳!为艺术而生的算法

    作者 | Jack Cui 来源 | Jack Cui(ID:JackCui-AI) 周一,看到 arXiv 新发了一篇非常有趣的论文:「Stylized Neural Painting」. 看着很有 ...

  7. python兔子编程_Python兔子生兔子算法,编程练习题实例十一

    Python兔子生兔子算法,编程练习题实例十一 Python兔子生兔子算法,编程练习题实例十一 没学习python之前就听说过一个兔子生兔子的数学算法问题.现在学习了python编程后,自然要用pyt ...

  8. python兔子生兔子_Python兔子生兔子算法,编程练习题实例十一

    没学习python之前就听说过一个兔子生兔子的数学算法问题.现在学习了python编程后,自然要用python语言来解决这个问题啦.Python编程练习题和答案实例十一,兔子生兔子的算法详解如下. P ...

  9. 计算机网络生成树算法,生成树算法

    在图论的数学领域中,如果连通图G的一个子图是一棵包含G的所有顶点的树,则该子图称为G的生成树(SpanningTree).生成树是连通图的包含图中的所有顶点的极小连通子图.图的生成树不惟一.从不同的顶 ...

  10. 使用矩形法(三种形式)、梯形法、辛普生方法编程计算

    题号: 编写文件:在matlab中创建新脚本,并保存,然后在命令行执行. function ss=exam3_1(t,a,b,n) dx=(b-a)/n; syms x; ff=x*exp(x)*si ...

最新文章

  1. java中i++和++i与c里的区别
  2. C语言之malloc和free总结
  3. 英语口语 Week14 Monday
  4. hexo评论_【前端简历加分】hexo框架搭建个人博客站点,手把手教学
  5. 【java】强悍!Java 9 中的9个新特性
  6. Labelimg图像标注
  7. manjaro修改锁屏壁纸
  8. 2018天津大学夏令营机试第二题
  9. 有没有测试水泥稳定性的软件,水泥稳定碎石基层的试验检测项目有哪些?急 急 急!!!...
  10. 教你如何在社会上“混”
  11. 在微信朋友圈常见的H5要如何制作?
  12. Docker基础第一步、什么是Docker
  13. DIV + CSS 学习笔记(盒模型)
  14. 3D 目标检测——IA-SSD
  15. PXI/PXIe控制器 4Link架构 16GB带宽 兼容主流PXIe机箱 设计文件!!! 原理图PCB
  16. JS+HTML5的Canvas画图模拟太阳系运转
  17. matlab在电磁波中的应用,Matlab在电磁场与电磁波学习中的应用
  18. Google Scholar GB格式引用
  19. 最全的卫星影像分辨率和传感器参数汇总SPOT、IKONOS、QB、北京一号、ZY-1-02C
  20. 21、收付款合同管理介绍

热门文章

  1. Zookeeper之Leader选举
  2. 四大国际反垃圾邮件组织介绍
  3. NOI题解(1.1编程基础之输入输出)
  4. android 下拉状态栏(SystemUI)常见修改记录
  5. 数值计算(九)——线性代数方程组求解(一)高斯消元法
  6. mysql数据库应用(六)----操作表的约束
  7. Gucci“瑕疵”口红海报是一种对审“丑”广告的致敬吗?
  8. ThinkCMF 框架上的任意内容包含漏洞
  9. C++ Grammar
  10. 360度领导能力全方位测试