编程根号怎么打「必看:java实现开根号的运算方式方法」

哈喽,小伙伴们大家好,今天杨嘉越说的这篇文章编程根号怎么打,java实现开根号的运算方式方法,还有关于根号,整数,小数,几位,千分等一系列的内容,整理总结之后,我就想着写这篇文章和大家分享一下,因为毕竟新手朋友还是很多的!

原文链接:

https://mp.weixin.qq.com/s/H2EY2Bi5KcTbC15F9M9KMg

今天我们来看一下这道题,java如何实现开根号的运算。大家都知道,java,c++,python等都有直接的函数可以给我们用,但是面试官这个时候让我们手撕源码,这个时候怎么做呢,来,不要慌!!!

如果某个数字正好可以开根号为2个整数,例如1,4,9等,那就很简单了。

如果某个数字不可以正好开根号为2个整数,而且要保留几位精度,例如:2,3,5等,我们该怎么办呢?????

首先我们可以把这个数字分成整数部分和小数部分,分别计算。

例如根号5≈2.236,我们可以先算出整数部分为2,然后再根据保留几位精度,去计算小数部分。依次计算十分位、百分位和千分位等,然后把整数位+十分位+百分位+千分位+。。。,结果就是我们想要的结果了。

来看代码

importjava.math.BigDecimal; publicclassTest6{ publicstaticvoidmain(String[] args){ System.out.println(Math.sqrt(5)); System.out.println(MathSqure(5, 6)); } //需要开根号的数据//需要保留的精度,即几位小数publicstaticdoubleMathSqure(intn, intm){ double[] arr = newdouble[m]; if(m >0){ arr = sc(m); } ints = sq(n); returnsb(n, s, arr); } /** * 计算要保留几位小数 * @paramm * @return*/publicstaticdouble[] sc(intm){ double[] arr = newdouble[m]; intnum = 0; while(num != m){ doublef = 1; for(inti=0;i<=num;i++){ f = f*10; } arr[num] = 1/f; num++; } returnarr; } /** * 计算整数位 * @paramn * @return*/publicstaticintsq(intn){ if( n == 1){ return1; } inttmp = 0; for(inti=1;i n){ tmp = i-1; break; } } returntmp; } /** * 开根号 * @paramn * @paramj * @paramarr * @return*/publicstaticdoublesb(intn, doublej, double[] arr){ doubletmp = j; for(intp=0;p0){ j = tmp;//计算过后的值(整数位+小数位的和,赋值给j,下面继续运算)} for(inti=1;in){ //避免丢失精度BigDecimal c1 = newBigDecimal(Double.toString(tmp)); BigDecimal c2 = newBigDecimal(Double.toString(arr[p])); tmp = c1.subtract(c2).doubleValue(); break; } } } returntmp; } }

编程根号怎么打,java实现开根号的运算方式方法

思路继续讲解。

小于2.3

编程根号怎么打,java实现开根号的运算方式方法

把2.2记录在这里

编程根号怎么打,java实现开根号的运算方式方法

小于2.24

编程根号怎么打,java实现开根号的运算方式方法

记录2.23

编程根号怎么打,java实现开根号的运算方式方法

依次这样做。

这篇文章的所有内容到这里就完了,希望对朋友能起到一定的帮助,认真看完了这篇编程根号怎么打「必看:java实现开根号的运算方式方法」文章,感觉收获很多,可以帮忙分享一下。

本文发布者:攻城师,不代表甜虾韭立场,转载请注明出处:https://www.tianxiajiu.com/p/4836.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 jubao226688#126.com 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年3月13日 08:43
下一篇 2023年3月13日 08:45

相关推荐

  • 压缩文件软件哪个最好用呢「详细介绍:亲测10款压缩app感受」

    小伙伴们大家好,今天朱星语抽了个时间整理了一些关于压缩文件软件哪个最好用呢,亲测10款压缩app感受,还有文件大小,图片,文件,这一,体积等等等各种相关干货内容,其实这篇文章主要还是为新手朋友整理的,总的来说思路还是很重要! 我们在日常工作学习中,经常会遇到文件体积过大的问题,发送和上传速度都非常慢,在我亲测了10款压缩软件,最终只留下这一款,可指定压缩文件…

    2023年3月8日 技术
  • 小米4c路由器怎么恢复出厂 推荐路由器恢复出厂设置的方法

    最近比较忙,今天何昱又抽时间给大家带来了小米4c路由器怎么恢复出厂,路由器恢复出厂设置的方法干货,还有关于路由器,按钮,密码,用户名,里面等等其他相关干货,想要做好首先一定要把基本功练好了,否者是很难持续提升的。 当我们忘记路由器登陆密码或者觉得路由器上网不稳定有故障的时候,通常可以通过将路由器恢复出厂设置,然后重新进行路由器设置来解决一些较难解决的问题。路…

    2天前
  • 三星a80手机怎么样值得买吗 必看:三星GalaxyA80评测图解

    今天杨钰给大家带来了这篇三星a80手机怎么样值得买吗,三星GalaxyA80评测图解干货,还有关于相机,旗舰,全面,实时,的是等等其他相关干货,精心为你准备的干货,通过这篇文章相信你能有所收货! 从全面屏的概念提出到现在,智能手机在形态上经历了几次标志性的进化。刘海屏、水滴屏再到现在借助机械结构已经实现了真全面屏的形态。而在众多的手机品牌中,三星拥有特殊的行…

    2023年5月22日 技术
  • 怎么隐藏手机软件oppo「详细讲解:使用oppo手机的必知晓的8个功能」

    小伙伴们大家好,今天秦明远抽了个时间整理了一些关于怎么隐藏手机软件oppo,使用oppo手机的必知晓的8个功能,还有关于功能,便签,密码,界面,隐私等一系列的内容,希望各位能认真阅读。因为,只有这样才能真正理解和掌握! 好绝‼️用oppo的一定要get这8个功能 设置好这8个功能,你们手中的oppo远比你们想象的更好用! oppo这8个隐藏功能太绝了,什么都…

    2023年2月13日 技术
  • 如何关闭苹果手机自动扣费功能「详细讲解:iPhone自动扣款关闭方法」

    小伙伴们大家好,今天家凯给大家分析下关于如何关闭苹果手机自动扣费功能,iPhone自动扣款关闭方法的事情,还有干货续费,支付宝,功能,我的,的是等等各种精品,整理总结之后,我就想着写这篇文章和大家分享一下,因为毕竟新手朋友还是很多的! 许多App支付会员等项目开通自动续费一般都有相应的优惠,那么不需要了要如何关闭呢?下面就来教大家自动扣款关闭方法。 1.打开…

    2023年9月17日 技术
  • 笔记本触摸板怎么开 附:笔记本触摸板你玩明白了吗

    很高兴又和大家见面了,今天朱翎嘉来和大家聊一聊笔记本触摸板怎么开,笔记本触摸板你玩明白了吗,以及触摸板,笔记本,你玩,明白了,单击等等各种一系列的相关干货,成功的路上不会一帆风顺,每一个成功的背后都有一个惊人的故事。 一、触摸板简介 笔记本触摸板(TouchPad或TrackPad),是一种广泛应用于笔记本电脑上的输入设备。利用感应用户手指的移动来控制指针的…

    2023年6月20日 技术