连续函数的根

#include <iostream>
#include <math.h>

double f(double const & x)
{
    return 4 * x + 1;
}

double root(double (*f)(double const &), double a, double b, double const & e)
{
    double middle = (a + b) / 2;
    while(f(middle) != 0 && fabs(b - 1) > e)
    {
        if(f(a) * f(middle) < 0)
        {
            b = middle;
        }
        else
        {
            a = middle;
        }
        middle = (a + b) / 2;
    }
    return middle;
}

int main()
{
    std::cout << root(f, -20, 20, 0.001);
    getchar();
    return 0;
}

时间: 01-30

连续函数的根的相关文章

Openjudge ch0111/t6253 用二分法求方程的根

这题只是考你最后有没有(r-l)/2而已…… 总时间限制: 1000ms 内存限制: 65536kB 描述 用二分法求下面方程在(-10, 10)之间的一个根. 2x3- 4x2+ 3x- 6 = 0 输入 一个小于1的非负实数e,它的值表示所能允许的误差 输出 一个实数,其值为求得的一个根,要求精确到小数点后8位.若该区间上没有根,则输出“No Solution” 样例输入 0 样例输出 2.00000000 提示 对于一个连续函数f(x),若f(a)*f(b) <= 0,则f(x)在区间[a

Busybox构建根文件系统和制作Ramdisk

定制根文件系统的方法很多,最常用的是使用BusyBox来构建定制根文件系统.它集成压缩了Linux的许多工具和命令,可以使用户迅速方便地建立一套相对完整.功能丰富的文件系统,其中包括大量常用的应用程序.下面详细介绍有关Busybox定制根文件系统. 一.系统环境: 1.操作系统:Ubuntu140.4 2.交叉编译工具:gcc version 6.1.1 20160711 (Linaro GCC 6.1-2016.08) 3.busybox源码包:busybox-1.26.2 二.构建rootf

聚合(根)、实体、值对象精炼思考总结

1.      聚合根.实体.值对象的区别? 从标识的角度: 聚合根具有全局的唯一标识,而实体只有在聚合内部有唯一的本地标识,值对象没有唯一标识,不存在这个值对象或那个值对象的说法: 从是否只读的角度: 聚合根除了唯一标识外,其他所有状态信息都理论上可变:实体是可变的:值对象是只读的: 从生命周期的角度: 聚合根有独立的生命周期,实体的生命周期从属于其所属的聚合,实体完全由其所属的聚合根负责管理维护:值对象无生命周期可言,因为只是一个值: 2.      聚合根.实体.值对象对象之间如何建立关联

安装framework 4.6.2的时报错 “无法建立到信任根颁发机构的证书链”

解决方案: 1.下载证书:MicrosoftRootCertificateAuthority2011.cer 2.开始→运行→MMC 3.文件→添加删除管理单元 (Ctrl+M) 4.证书→计算机账户(其他的都保持默认,无限下一步) 5.回到窗体,展开:证书→受信任的根证书颁发机构→证书 6.右击展开菜单,所有任务→导入 7.剩下的,就是选择你下载好的cer文件,然后无限下一步了.

【JSTREE】 jstree-初始化时默认选中根节点

var contacttree = $('#contact-org').jstree({ "core" : { "animation" : false, "multiple" : false, "check_callback" : true, "themes" : { "icons" : true, "dots" : false }, "data"

求一元二次方程的根

描述 利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/(2*a)求一元二次方程ax2+ bx + c =0的根,其中a不等于0. 输入输入一行,包含三个浮点数a, b, c(它们之间以一个空格分开),分别表示方程ax2 + bx + c =0的系数.输出输出一行,表示方程的解.若b2 = 4 * a * c,则两个实根相等,则输出形式为:x1=x2=....若b2 > 4 * a * c,则两个实根不等,则输出

构建根文件系统之init进程分析

busybox是ls.cp等命令的集合. 执行ls时,实际上是执行了busybox ls 执行cp时,实际上是执行了busybox cp 分析init程序之前,再让我们回想一下我们的目标:u-boot启动内核,内核启动应用程序,内核是怎样启动应用程序呢,内核启动了init进程,位于/sbin/init中.我们最终的目的是启动客户程序,也就是说假如你是做手机的,希望启动一个手机的程序,假如是做监控的,那么就启动一个监控的程序的.客户各有不同,但都使用了linux系统,那么怎样加以区分呢? init

centos7根分区扩容(适用目前主流版本)

查看根分区不够用了 1.关掉系统,从新增加一块硬盘,开机.(云主机不用关机直接添加就行) 2.fdisk –l   本次增加的磁盘叫做/dev/vdb 3.给新增加的磁盘分区: fdisk /dev/vdb 输入p,查看分区:(新加的硬盘是没有分区的,如果有 数据可以情况,输入d删除) 输入n ,创建新分区: 输入p,创建主分区 输入1,新建xvdc的第一个主分区,(或者回车即可) 回车(默认从开始分) 输入最大的柱面数,也就是磁盘的最大数:或者回车(默认最大的) 选择格式t 列出格式l 输入格

领域模型:聚合、聚合根详解

聚合和聚合根是领域模型里面很重要的一个概念,其实我们在从真实世界对业务对象进行识别和概念建模的时候,关注的就是聚合根,这才是我们真正要管理的业务对象.一个对象可能有多个层次,也可能有多个子实体,但是这些子实体都不可能孤立存在,它们必须依附于一个聚合根存在,它们和根节点具有同样的生命周期. 如果一个客户消亡,客户联系方式,客户的多张银行账户信息将不再有任何意义.如果一张采购订单头消失,那么采购订单明细没有任何存在的意义.客户,采购订单,发票这些从真实业务中转化过来的业务对象才是真正的领域核心对象.