public static void main(String[] args) {long start = System.currentTimeMillis();double target=9876543212345d;double result =sqrt(target);System.out.println("sqrt耗时:"+(System.currentTimeMillis()-start)+",result:"+result);start=System.currentTimeMillis();result =SqrtByBisection(target, 0);System.out.println("SqrtByBisection耗时:"+(System.currentTimeMillis()-start)+",result:"+result);start=System.currentTimeMillis();result = SqrtByNewton(target, 0);System.out.println("SqrtByNewton耗时:"+(System.currentTimeMillis()-start)+",result:"+result);}//牛顿迭代法public static double SqrtByNewton(double target,double eps){double Xa=target,Xb;do {Xb = Xa;Xa = (Xa+target/Xa)/2;} while (fabsf(Xa,Xb)>eps);return Xa;}//二分法  精度是指两次mid值的差值public static double SqrtByBisection(double target,double eps){double min=1,max=target;double mid =(min+max)/2;double anMid;do {if(mid*mid>target){max=mid;}else{min=mid;}anMid=mid;mid=(max+min)/2;} while (fabsf(anMid,mid)>eps);return mid;}public static double sqrt(double d){double a = 0.1;double x1,x2=0;while (a*a<=d) {a+=0.1;}x1=a;for (int i = 0; i < 10; i++) {x2=d;x2/=x1;//x2 = x2/x1;x2+=x1;x2/=2;x1=x2;}return x2;}public static double fabsf(double a,double b){if(a>b){return a-b;}elsereturn b-a;}

转载于:https://www.cnblogs.com/-1007813544/p/8983293.html

java实现开根号算法相关推荐

  1. Java中开根号,你还记得吗

    目录 前言 一.了解根号运算 二.Java开根号 1.Math.sqrt()开平方根 2.Math.pow()开根号 3.牛顿迭代法来近似求解平方根 总结 前言 开根号相信大家都不陌生,这是一种数学运 ...

  2. java中开根号是什么函数_这真的是素数的公式!但没有什么卵用!

    愚人节期间,我们哆嗒和往年一样,发了一篇愚人节的整蛊文章<素数公式发现,所有数学之谜即将揭开>,没想到大家和我们一起玩的很嗨,真是一个欢乐的愚人节. 文章中我们写出了下面这样一个公式,并说 ...

  3. java中开根号求三角形_Java编程 如何计算三角形的内切圆半径?

    共回答了13个问题采纳率:100% 一般三角形:r=2S/(a+b+c),其中S是三角形面积,a.b.c是三角形三边.另外S=根号下p(p-a)(p-b)(p-c),其中p=(a+b+c)/2 pub ...

  4. JAVA实现开根号的两种方式:二分法以及牛顿迭代法

    public class demo {public static void main(String[] args) {System.out.println("---- 二分法计算根号 --- ...

  5. √[ (11^4+100^4+111^4)÷2]的开根号算法

    数学オリンピック1次予選問題解いてみました

  6. 开根号的笔算算法图解_机器学习KNN算法之手写数字识别

    1.算法简介 手写数字识别是KNN算法一个特别经典的实例,其数据源获取方式有两种,一种是来自MNIST数据集,另一种是从UCI欧文大学机器学习存储库中下载,本文基于后者讲解该例. 基本思想就是利用KN ...

  7. 【素数问题】整理几种计算素数的算法,包含:两层循环,开根号法,埃氏筛选法,欧拉筛选法

    这篇文章主要介绍素数相关的算法问题,包含:两层循环判断,开根号法,埃氏筛选法,欧拉筛选法. 目录 一.什么是素数 二.素数计算几种方式 2.1.两层循环

  8. Math Alg. Root 数学算法笔记:开根号

    from 开根号基础公式 - 百度文库 from 开方(数学术语)_百度百科 对于任意实数的开方,可以使用切线法得到其任意精度的结果,切线法的迭代公式为: 取任意初始值 以上迭代序列将会收敛: 实际应 ...

  9. 开根号的笔算算法图解_一个数的开根号怎么计算

    一个数的开根号怎么计算2020-11-08 15:46:47文/钟诗贺 带根号的式子可以直接进行开平方的运算.一些特殊的根号运算有;√2≈1.414.1/2-√3≈0.5-1.732≈-1.232.2 ...

最新文章

  1. 大学生计算机实验基础考试,大学生计算机基础考试试题
  2. mysql基础搭建_MySql基础-构建MySql数据库:安装MySql-server、MySql-client
  3. Java设计模式 创建模式-单态模式(Singleton)
  4. python3 读取配置文件中的参数值替换yaml文件中的占位符(变量)
  5. table tr省略后鼠标移入显示相应信息_中考来了,人机对话、信息技术考试要求看过来...
  6. linux path环境变量起什么作用,shell基础(5)PATH环境变量的作用和使用方法
  7. 链表(单链表、双链表、内核链表)
  8. 网络安全防护部署,升级支持IPv6
  9. 手绘流程图讲解spark是如何实现集群的高可用
  10. Pyqt5:使用多线程QThread
  11. DES, TripleDES and BlowFish in Silverlight
  12. Pandas系列(九)axis参数理解
  13. mysql登录框万能密码_网站登录万能密码
  14. excel两个表格数据对比_excel如何1秒钟合并两个不同表格数据?收下这个方法吧...
  15. linux安装so共享动态库文件下载,linux下的共享库(动态库)和静态库
  16. lighttp 配置php扩展包,Lighttpd配置
  17. web字体文件过大优化方案
  18. 工作总结:简明扼要,突出重点
  19. 创建 Time Machine 时间机器的备份至 openmediavault 5(OMV 5) NAS 的 SMB/CIFS 共享文件夹
  20. matlab求信号的瞬时相位,phrase MATLAB中关于信号瞬时相位和瞬时频率的提取的代码 - 下载 - 搜珍网...

热门文章

  1. iOS之TabbarController和NavigationController框架
  2. 作为程序员,如何征战应聘沙场?
  3. Spring AOP切面
  4. 21级数据结构与算法实验7——查找表
  5. http://windowsandroid.cn.uptodown.com/download
  6. facebook下载
  7. PG使用pg_settings表查看参数的生效条件
  8. 安装时间大于30秒_30个住宅室内消防设置检验要点!硬核干货!
  9. springboot+cas单点登录
  10. 【万人千题】誓要成为刷题界的卷王王中王