C语言复习---矩形法求定积分函数
2024-10-05 04:49:00
一:分析:
大一学习积分的时候,我们学习过,可以通过矩形法来求定积分。
思路就是将积分区间划分成n等份,然后将这n等份近似看成矩形(或梯形),然后对所有的矩形(或梯形)的面积进行求和。
二:简单的例子
求函数X^2在的定积分
矩形法:
#include<iostream>
#include<math.h>
using namespace std;
int main(){
float fun(float x);
float a, b;
cout << "请输入函数X^2的定积分的下限a和上限b:";
cin >> a >> b;
int n = ;//将区间划分成50份
float h = (b - a) / n;//h是每个区间分大小
float s = ;//s是矩形的面积的和
float i = ;
for (i = a; i < b; i += h){
s = s + fun(i)*h;
}
cout << "\n结果是:" << s << endl;
cout << endl;
}
float fun(float x){
return pow(x, );
}
三:使用C语言实现下面三个函数的定积分求解
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <math.h> //使用矩形法来求定积分的通用函数
//p是函数指针,a是下界,b是上界,n是等分数
float integral(float(*p)(float), float a, float b, int n)
{
int i;
float area=;
float ew = (b - a) / n; for (i = ; i <= n;i++)
area += (*p)(a + i*ew)*ew; return area;
} float f_sin(float x)
{
return sin(x);
} float f_cos(float x)
{
return cos(x);
} float f_exp(float x)
{
return exp(x);
} int main()
{
float a, b,area;
float(*p)(float);
int n = ; printf("test sin,input a,b:");
scanf("%f,%f", &a, &b);
p = f_sin;
area = integral(p, a, b, n);
printf("get value:%f\n", area); printf("test cos,input a,b:");
scanf("%f,%f", &a, &b);
p = f_cos;
area = integral(p, a, b, n);
printf("get value:%f\n", area); printf("test exp,input a,b:");
scanf("%f,%f", &a, &b);
p = f_exp;
area = integral(p, a, b, n);
printf("get value:%f\n", area); system("pause");
return ;
}
最新文章
- HTML标记语法之表格元素
- 时间与NSString转换
- 解决Windows 10下Wireshark运行问题
- 虚拟机Linux和Windows之间互传文件的好帮手WinSCP
- Hibernate逍遥游记-第12章 映射值类型集合-003映射List(<;list-index>;)
- 在系统方法中调用navigationController的标准写法
- 第 15 章 组合模式【Composite Pattern】
- Treasure Hunt - POJ 1066(线段相交判断)
- 【APP UI 设计模式】(一)APP UI 设计原则和流程
- SSM-MyBatis-04:Mybatis中使用properties整合jdbc.properties
- 微信小程序用户信息解密失败导致的内存泄漏问题。
- SpringCloud(2)---SpringCloud入门篇
- Java匹马行天下之JavaSE核心技术——Java基础语法
- 深入浅出javascript(六)对象
- 复习 C++ 中类的函数指针
- mysql列类型char,varchar,text,tinytext,mediumtext,longtext的比较与选择
- Codeforces 601C Kleof&#225;š and the n-thlon 概率dp
- 【Java】 大话数据结构(14) 排序算法(1) (冒泡排序及其优化)
- ASP.NET mvc4 Controllder 同步还是异步
- 【数据服务中间件】一、HttpServlet