原理是二分法不断迭代:

取max为指定值target,min为1,精度要求m;取min和max的中点mid,当midmid>target,把max设定为mid;当midmid<target,把min设定为mid。然后max和min求出新的中间 newMin。

结果就在mid和newMid之间,并不断逼近最终结果,当newMid-mid的绝对值小于m时,结果即为所求

【代码】

package practice;public class Sqrt {public double method(double target, double m) {double min,max,mid,newMid;min = 1;max = target;mid = (min+max) / 2;do {if (mid*mid<target) {min = mid;} else {max = mid;}newMid = mid;mid = (max+min)/2;} while (abs(mid,newMid)>m);return mid;}public double abs(double a, double b) {if (a>b) return a-b;else return b-a;}public static void main(String[] args) {System.out.println(new Sqrt().method(20,0.0001));System.out.println(Math.sqrt(20));}
}

Java求指定精度的开根号运算相关推荐

  1. java实现一定精度的开根号运算

    需求:在不借助系统库的情况下,编写一个函数,实现开根号的操作,并且保证一定的精度 代码采用了牛顿迭代法以及二分查找法两种方式并分别打印了他们的循环次数以比较优劣: /*** 实现一个函数,完成对v开根 ...

  2. 算法-二分法和牛顿法求指定精度平方根

    一.引言 给定某个整数,给定固定精度,求该整数对应精度的平方根. 假设目标数字为 targrt,则寻找平方根数使得 sqrt(target) = Left = Right = sqrt(Left * ...

  3. java如何对一个表达式开根号_作为一个零基础的新手,如何系统的自学Java和JavaEE开发技术?...

    0基础就找资料学习吧,建议不要看书,选择视频更好,对于新手来说,书本如果在没有人指导之下去看基本上很难看懂 在你学习Java之前一定要去了解一下这门语言,千万不要脑子热就选择来这行 如何系统的自学Ja ...

  4. oracle对成绩开根号运算,Oracle SQL 之 数学计算-开方根(咋个办呢 zgbn)

    1.求100的5次开方. 推到公式:a^b=c        log(a,c)=b      log(a,c)=ln(c)/ln(a)=b 如题:  x^5=100 ->log(x,100)=5 ...

  5. maya python 开根号,基于python不同开根号的速度对比分析

    我就废话不多说了,大家还是直接看代码吧~ import time import math import numpy as np def timeit1(): s = time.time() for i ...

  6. java中小数的处理:高精度运算用bigDecimal类,精度保留方法,即舍入方式的指定

    java中小数的处理:高精度运算用bigDecimal类,精度保留方法,即舍入方式的指定 2016年05月11日 11:20:08 阅读数:6336 一. 计算机的小数计算一定范围内精确,超过范围只能 ...

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

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

  8. python二维向量公式坐标叉乘_Python 或 sage 有没有哪个函数可以求指定向量的模?进行点乘运算,叉乘运算。...

    Hlianbobo:python 或 sage 有没有哪个函数可以求指定向量的模?进行点乘运算,叉乘运算?求相关的库名称已经代码示例,谢谢! zhzy:numpy Tony042:numpy,或者自己 ...

  9. java小数丢失精度_Java中的小数运算与精度损失

    float.double类型的问题 我们都知道,计算机是使用二进制存储数据的.而平常生活中,大多数情况下我们都是使用的十进制,因此计算机显示给我们看的内容大多数也是十进制的,这就使得很多时候数据需要在 ...

  10. 用手机计算机计算三次根号,手机自带计算器不行求推荐一个能开3次根号的 – 手机爱问...

    2006-08-14 如像我遇到处理标准偏差,我没计算器,数字又很大,不知道开根号后的值.需要开根号,没工具.如何在计算机上处理. 有EXCEL中可直接实现计算标准偏差功能. DSTDEV 请参阅 将 ...

最新文章

  1. 从大厂“出逃”,今天又有三位程序员联手敲钟:市值 40 亿
  2. C++friend 友元类和友元函数
  3. 通过Python实现简单的计算器
  4. “非常有用”的JavaScript 和 CSS 库插件推荐
  5. 光盘中删除数据如何恢复_电脑硬盘数据恢复教程,EasyRecovery软件讲解,恢复删除数据...
  6. 计算机常用技巧及快捷键
  7. python核心编程-第三章-个人笔记
  8. 江湖传闻怪谈——让酒
  9. Mac OS怎么删除虚拟机声卡
  10. JQUERY简单实现点击图片放大效果
  11. 手机投屏到电脑完美教程,安卓和苹果用户均可使用
  12. Java之Base64
  13. 论机电一体化的发展By integration of machinery development
  14. Macbook Pro(M1芯片)腾讯会议无法使用共享屏幕功能
  15. 批处理——读写文件、字符串替换
  16. highcharts制作3D饼图渐变效果
  17. XGBoost:参数解释
  18. 家用计算机的普及英语作文,优秀高二英语作文:计算机
  19. WCF 关闭默认调试客户端
  20. 派拓网络:这个“云安全市场”不一般

热门文章

  1. 软件代码数字签名基本原理
  2. 如何将手机号码批量导入手机通讯录
  3. Oracle临时表详解
  4. C#编程,byte 与 int 相互转换
  5. YUV格式的图片查看工具YUView 2.13
  6. 计算机验证iq oq pq,验证、确认、鉴定过程、DQ、IQ、OQ、PQ这几个概念如何理解?...
  7. Dlib+Opencv库实现疲劳检测
  8. 思维导图模板创意可爱简单,模板资源分享
  9. linux redis配置文件位置,Linux 安装配置Redis
  10. MariaDB安装教程(保姆级)