24小时热门版块排行榜    

查看: 1263  |  回复: 9
本帖产生 1 个 程序强帖 ,点击这里进行查看

muqiuyan

木虫 (小有名气)

[交流] 【求助】计算积分的程序 已有3人参与

有哪位高手帮忙编个程序,C语言的,C++也可,可以同时计算两个积分,两个都是一重积分,积分变量也不同。谢谢诸位。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simthhuang

木虫 (小有名气)

首先声明:不是高手


muqiuyan(金币+1):谢谢参与
//被积函数
float f1(float x);
float f2(float x);
//积分函数
// * r1,存放第一个函数的积分结果
// * r2,存放第二个函数的积分结果
// s:积分下限,e:积分上线
// pf1,pf2,待积函数指针,
//如不用函数指针.删除这两个参数,并把函数体内的pf1,pf2改为f1,f2即可。
void  ff( float * r1,float * r2, float s,float e ,float ( * pf1 )(float),float (*pf2)(float) )
{
     //d积分步长
    float d = 0.01, x;  
    *r1 = 0;
     *r2 = 0;
    for( x = s + d; x <= e; x += d )
     {
          *r1 += d * pf1( x );
          *r2 += d * pf2( x );
     }
}

[ Last edited by simthhuang on 2010-6-8 at 13:22 ]
一贯知足二目远眺三餐有节四季不懒五谷皆食六欲不张七分忍让八方交往九薄烟断十分坦荡
2楼2010-06-08 13:21:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simthhuang

木虫 (小有名气)


wangen994(金币+1):感谢你热心的帮助大家 2010-06-08 17:03:18
刚回头看了下你5月发的那个问题,跟这个问题是相似的吧。没想到还没搞定。很遗憾.....
根据你的帖子看,问题很简单,但给出的答案未必能满足您的原始要求,如果方便,可以把你的原始问题呈现出来,更方便解答。
一贯知足二目远眺三餐有节四季不懒五谷皆食六欲不张七分忍让八方交往九薄烟断十分坦荡
3楼2010-06-08 13:51:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

muqiuyan

木虫 (小有名气)

余泽成:还是上图吧,可以抓屏,以jpeg格式上传,小木虫的图片系统现在比较好用! 2010-06-08 23:24:02
如果大家认为我说的不清楚,我乐意在详细的介绍下。
我在编一个复杂计算过程的程序,计算公式中有两个一重定积分,在不同的地方,且上下限也不同,积分变量不同。或者说两个完全不同的积分。因此我希望有一个计算积分的子程序,在计算到积分时能分别调用。

PS:公式很复杂,不知道怎么贴过来

[ Last edited by muqiuyan on 2010-6-8 at 17:35 ]
4楼2010-06-08 17:21:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

muqiuyan

木虫 (小有名气)

引用回帖:
Originally posted by simthhuang at 2010-06-08 13:51:44:
刚回头看了下你5月发的那个问题,跟这个问题是相似的吧。没想到还没搞定。很遗憾.....
根据你的帖子看,问题很简单,但给出的答案未必能满足您的原始要求,如果方便,可以把你的原始问题呈现出来,更方便解答。

谢谢

[ Last edited by muqiuyan on 2010-6-8 at 17:23 ]
5楼2010-06-08 17:22:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

muqiuyan

木虫 (小有名气)

引用回帖:
Originally posted by simthhuang at 2010-06-08 13:21:00:
//被积函数
float f1(float x);
float f2(float x);
//积分函数
// * r1,存放第一个函数的积分结果
// * r2,存放第二个函数的积分结果
// s:积分下限,e:积分上线
// pf1,pf2,待积函数指针,
//如不用函 ...

谢谢您的帮助。
6楼2010-06-08 17:22:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

simthhuang

木虫 (小有名气)

★ ★
余泽成(金币+2):谢谢参与应助! 2010-06-08 23:24:28
wangen994(程序强帖+1):授予程序强帖一个,欢迎常来 2010-06-11 17:55:05
引用回帖:
Originally posted by muqiuyan at 2010-06-08 17:21:38:
如果大家认为我说的不清楚,我乐意在详细的介绍下。
我在编一个复杂计算过程的程序,计算公式中有两个一重定积分,在不同的地方,且上下限也不同,积分变量不同。或者说两个完全不同的积分。因此我希望有一个计算 ...

那我就再给你写个吧:

//被积函数原型
double f( double );

//积分函数,返回值为积分结果
//s,e分别为积分上下限
//pf为被积函数指针.

double ff( const double s, const double e, double ( *pf )( double ) )
{
   //计算积分,可以采用别的快速算法
   double d = 0.01, x, r, l, h;
   if( s > e )
   {
        l = e;
        h = s;
    }
   else
   {
        l = s;
        h = e;
    }
   r = 0;
   for( x = l + d; x <= h; x += d )
   {
         r += d * pf( x );
   }
   return (s > e ? - r : r ) ;
}
该函数的使用方法如下:
首先定义被积函数,如:
double sqr( double x )
{
      return x * x;
}

然后调用积分函数,即可得积分结果:

double result = ff( 12.3, -22, sqr );

望能释疑。
一贯知足二目远眺三餐有节四季不懒五谷皆食六欲不张七分忍让八方交往九薄烟断十分坦荡
7楼2010-06-08 20:58:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

alexissp

金虫 (正式写手)

干活的


muqiuyan(金币+1):谢谢参与
应该不难写,你要运算的是啥函数?
简单充实
8楼2010-06-11 12:28:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

muqiuyan

木虫 (小有名气)


余泽成(金币+1):谢谢参与应助! 2010-06-11 20:58:02
引用回帖:
Originally posted by alexissp at 2010-06-11 12:28:29:
应该不难写,你要运算的是啥函数?

被积函数就是一般的计算式,只是很复杂,手算积分不出来,我想把式子贴过来可是粘贴不上。
一个是关于T积分的,被积函数是V/R/T*(dP/dT)其中P是关于T的一个函数,就是类似这样的。
9楼2010-06-11 20:38:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

alexissp

金虫 (正式写手)

干活的

你把word的公式存成pdf然后以图片格式贴出来就是
简单充实
10楼2010-06-12 12:44:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 muqiuyan 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 0XLacIJUOj8D 2026-08-24 3/150 2026-08-25 01:47 by BZKMTicpDhFj
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +7 scalable 2026-08-24 7/350 2026-08-24 23:01 by anata1209
[基金申请] 我面上完蛋了 +9 且听虎啸 2026-08-20 10/500 2026-08-24 20:08 by 苦寒来香
[基金申请] 能否退出参与的面上项目解除限项 +21 koalala 2026-08-24 24/1200 2026-08-24 19:25 by 家与远方
[基金申请] filecode,4个jtjc了 +14 ziyangfang 2026-08-19 17/850 2026-08-24 18:37 by 哈哈蛤?
[基金申请] 2026国自然函评费到账 +17 羊腰板 2026-08-21 19/950 2026-08-24 16:52 by iaeyuan
[基金申请] 今日不放榜?网传国自然预计 8 月 27 日可查结果 +17 医学老男孩 2026-08-20 21/1050 2026-08-24 14:21 by refreshing11
[基金申请] 让我中一个面上吧! +13 大萍1987 2026-08-20 16/800 2026-08-24 10:23 by 太傻了
[基金申请] 放榜前的不淡定 20+4 snowwithsea 2026-08-19 17/850 2026-08-24 10:20 by echo8914667
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +4 process2012 2026-08-23 5/250 2026-08-23 19:58 by jurkat.1640
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[基金申请] 今天放榜吗? +15 布布和一二 2026-08-19 16/800 2026-08-23 09:55 by 张春生
[基金申请] 只有每年这种时候来逛逛小木虫 +24 yaoyewhu2008 2026-08-20 26/1300 2026-08-22 17:43 by kammury
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 看来今天不会放榜了? +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[基金申请] 今天放榜没戏了吧 +9 yuleib84 2026-08-19 11/550 2026-08-21 10:06 by gltch
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
信息提示
请填处理意见