永发信息网

跪求C++大神帮忙编个程序!急需!!!感激不尽!!!

答案:3  悬赏:70  手机版
解决时间 2021-03-09 22:45
跪求C++大神帮忙编个程序!急需!!!感激不尽!!!
最佳答案
说实话,比较简单。 我这会想休息一下,就简单给你写个框子吧。
typedef double (*Func) (double x);  //定义一个函数指针,注意我只简单写一个参数的函数指针。double e_pow_x(double x) //e^x
{
    return ......;// 自己找数学库中的函数
}

double sin_2_x(double x) //sin2x
{
    return ...;//自己找数学库中的函数
}

//积分框架
double integral(Func f, double precision, double low, double high)
{
    double step = 0.0000000001, result = 0;
    for(double x = low; x < high; x += step){
        result += f(x)
    }
    return result;
}//注意上面的积分框架并没有考虑传入的精度precision问题,这是因为精度本身是由step的大小来确定的。 积分从本质上来说是极限的求和。上面的求面积本质上可以转换为一个个的小的四边形的面积和。 step越小,越接近积分值。 至于这个接近到10^-7,就比较尴尬了。因为你并不知道step达到多小的时候,能达到这样的精度。 一个简单的方法是在外部包装一个函数。它给出一个积分的精确值,并比较这个精确值与我们积分框架得到的估计值做差。 如果精度达不到要求的精度,就继续减小step,直到达到精度为止。

double integral_real(Func f, double low, double high)
{
 //根据函数的的不同,返回积分的真实值。 
 //这个需要调用积分公式,然后带入low和high得到积分的结果
     return ....;
}

//积分框架,需要外部传入step
double integral(Func f, double step, double low, double high)
{
    double result = 0;
    for(double x = low; x < high; x += step){
        result += f(x)
    }
    return result;
}
//此函数用循环减小step的方式不断的逼近真实值,直到达到要求的精度
double approachReal(Func f, double precision, double low, double high)
{
    double step = 0.0001, real = 0.0, estimate = 0.0;
    do
    {
        step /= 2; //每次step缩小一杯
        real = integral_real(f, low, high); //真实值
        estimate = integral(f, step, low, high); //估计值
    }
    while(fabs(real, estimate) > pow(10, -7)) ; //如果真实值与估计的差距比较大的时候,进一步缩小step。
    return estimate;
}最后的最后,作为一个程序员,一定要重申, 纸上得来终觉浅,绝知此事要躬行!!!
祝所有的程序员们happy。
追问很感谢你的回答!真大神啊!话说可以写出完整可以运行出来的程序么?真的是急需,只要能解决就会采纳你的回答的,谢谢你!麻烦了!
全部回答
这也太复杂了吧
简单是简单,但是大神肯定不愿意做如此无聊的事啊。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
CF怎么把瞬JU练好???
英语语法这样写怎么理解?
谁知道这几个篆书是什么
谁用过完姿护肤品说一下自己的亲身感受吧亲
形容冬天的悲伤的句子
长春易宇科技有限公司地址有知道的么?有点事
画江湖之杯莫停文靖用复活变坏了吗
当和一个女的还没确定关系,她问我我们是什么
踏板摩托电量足电启动沉是怎么回事
小韩1-多元批发(总店)在什么地方啊,我要过去
将9个人(含甲、乙)平均分成三组,甲乙分在
超星慕课的密码怎么找回
郑州曼柔纺织品有限公司生产的菲苒品牌毛巾
人群健康状况评价指标包括().
请问御孤神双炽在哪看,这是漫画还是动漫 用
推荐资讯
感动的反义词是什么
太阳镜片掉出来了
口袋妖怪金收音机哪里得
古文 竟然如此 怎么说
四个字游戏情侣名字
紫溪人家农家乐这个地址在什么地方,我要处理
当男方的妈妈看不上他的女朋友怎么办
什么是口算,什么是听算,口算和听算一样吗
我家楼下有一个网吧,用的应该是光纤网络,我
步步高家教机S1怎么下载我的世界!
吴良材眼镜NO.151地址有知道的么?有点事想过
步步高点读机显示usp没法联接
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?