迭代法对大于1的数计算更准确,小于1的话就比较麻烦,所以大于1用迭代,小于1用二分


#define n_ACCURACY (0.002)//最大为误差
#define n_MAX_COUNT_TIME 10 //最大计算次数double mySqrt( double x )
{double a = x;double min,max,mid,res;unsigned char t;unsigned char count=0;if(x<=0)return 0;if(x>=1)//牛顿迭代法{while ((a * a - x) > n_ACCURACY)){a = (a + x / a) / 2;count++;if(count>=n_MAX_COUNT_TIME )break;}return a;}else//二分法{min = 0;max = 1;mid = 0.5;t=1;while(t){t=0;res = mid*mid;if(res > x){if((res-x)>n_ACCURACY){t=1;max = mid;mid = (max+min)/2;}}else{if((x-res)>n_ACCURACY){t=1;min = mid;mid = (max+min)/2;}}count++;if(count>=n_MAX_COUNT_TIME )break;}return mid;}
}

开方 C语言 迭代法加二分法相关推荐

  1. R语言广义加性模型(GAMs:Generalized Additive Model)建模:数据加载、划分数据、并分别构建线性回归模型和广义线性加性模型GAMs、并比较线性模型和GAMs模型的性能

    R语言广义加性模型(GAMs:Generalized Additive Model)建模:数据加载.划分数据.并分别构建线性回归模型和广义线性加性模型GAMs.并比较线性模型和GAMs模型的性能 目录

  2. R语言广义加性模型GAMs:可视化每个变量的样条函数、样条函数与变量与目标变量之间的平滑曲线比较、并进行多变量的归一化比较、测试广义线性加性模型GAMs在测试集上的表现(防止过拟合)

    R语言广义加性模型GAMs:可视化每个变量的样条函数.样条函数与变量与目标变量之间的平滑曲线比较.并进行多变量的归一化比较.测试广义线性加性模型GAMs在测试集上的表现(防止过拟合) 目录

  3. R语言广义加性模型(generalized additive models,GAMs):使用广义线性加性模型GAMs构建logistic回归

    R语言广义加性模型(generalized additive models,GAMs):使用广义线性加性模型GAMs构建logistic回归 目录

  4. R语言保存加载工作空间或者工作空间数据对象实战(Save Load RData Workspace)

    R语言保存加载工作空间或者工作空间数据对象实战(Save & Load RData Workspace) 目录 R语言保存加载工作空间或者工作空间数据对象实战(Save & Load ...

  5. C语言重复加一个数的所有位数字的算法(附完整源码)

    C语言重复加一个数的所有位数字的算法 问题举例 C语言重复加一个数的所有位数字的算法完整源码(定义,实现,main函数测试) 问题举例 例如给定num = 38,过程类似于:3 + 8 = 11,1 ...

  6. C语言自加自减运算符(++i / i++) - C语言零基础入门教程

    目录 一.C 语言自加++ / 自减 – 运算符简介 1.前 ++ 后 ++ 的区别 2.前–后-- 的区别 二.C 语言自加++/自减–运算符实战 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : ...

  7. C语言——迭代法求a的平方根——更新01

    # C语言--迭代法求a的平方根--更新01 #include <stdio.h>#include <math.h>int main() {double a;double x1 ...

  8. 易语言QQpost加好友源码

    易语言QQpost加好友源码 以下是部分代码 .版本 2 .支持库 specGetQq (主动添加QQ) QQ空间页面 = 编码_Utf8到Ansi (网页_访问_对象 ("https:// ...

  9. c语言文件 加载内存吗,把文件中的数据加载到内存进行查找C语言实现.docx

    把文件中的数据加载到内存进行查找C语言实现 #define _CRT_SECURE_NO_WARNINGS#include#include#includechar **pp=NULL;void ini ...

  10. R语言成功加载rJava方法

    加载rJava的同时,要下载JAVA的JRE并且配置环境变量JAVA_HOME,因为rJava的调用需要java运行环境. 1.下载JRE 64位版本的JRE官网下载:http://www.java. ...

最新文章

  1. java源码之HashMap和HashTable的异同
  2. java属性修改前后_java 记录对象前后修改的内容(工具类)
  3. 设置mac的全局命令
  4. java三大特性——封装,继承,多态
  5. idea将本地项目推送至远程仓库(图形化版本01)
  6. 拼团小程序源码_拼团小程序制作干货教程
  7. 百科知识 STEP文件如何打开
  8. 构造函数中的常见错误
  9. 电脑中了MEMZ病毒怎么办
  10. 神农班2019年总结
  11. WEB前端 -- onfocus=quot;this.blur()quot;
  12. 我的世界pe服务器坐标怎么显示,我的世界手机版坐标怎么看 PE版没有MOD怎么查看坐标...
  13. 如何在scrapy中捕获并处理各种异常
  14. Scrapy爬取图片并重命名总结
  15. 把握视频剪辑“节奏感”,视频剪辑其实也可以很简单
  16. 【游戏设计笔记】游戏开发团队
  17. 织梦DEDE自带采集标题限制,解决文章标题字数长度方法
  18. Unity 3D视频播放器场景C#脚本
  19. 秉时微型计算机,国产通用处理器整机独家首测(下) 小巧的办公用机秉时biens XES30微型计算机 网页多开、文本图片处理无压力 轻松办公 两...
  20. 怎样才能成为一个成熟的男人?

热门文章

  1. 十大领域管理软件供应商入选厂商如下(排名不分先后)
  2. MTK wifi驱动源码分析
  3. centos7搭建radius认证服务器
  4. gns3gns3下载_如何将Gns3安装到Fedora?
  5. java爬虫实例教程_Java爬虫的实例分析
  6. IOMMU之Interrupt Remapping
  7. CSDN 个人博客域名设置
  8. 服务器字段长度修改,postgresql 修改字段长度的操作
  9. html5 java 微信商城_微信商城和H5商城区别是什么?
  10. 价值1680元的python实战全套教学视频