zoukankan      html  css  js  c++  java
  • 开平方 如果没有计算器,我们如何求2的平方根? 可以先猜测一个数,比如1.5,然后用2除以这个数字。

    /*	开平方
    如果没有计算器,我们如何求2的平方根?
    可以先猜测一个数,比如1.5,然后用2除以这个数字。
    如果我们猜对了,则除法的结果必然与我们猜测的数字相同。
    我们猜测的越准确,除法的结果与猜测的数字就越接近。
    根据这个原理,只要我们每次取猜测数和试除反馈数的中间值作为新的猜测数,肯定更接近答案!
    这种计算方法叫做“迭代法”。
    
    下面的代码模拟了如何用手工的方法求2的平方根的过程。请填写缺少的代码。
    把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
     */
    public class 巧开平方 {
    	public static void main(String[] args) {
    		double n = 2;
    		double a = 0;
    		double b = n;
    		while(Math.abs((a-b))>1E-15){
    			a = (a+b)/2;
    			b = n/a;	// 填空
    		}
    		System.out.printf("%f\n", a);
    		System.out.println(Math.sqrt(n));
    	}
    }
    

    运行结果:

    1.414214
    1.4142135623730951
    


  • 相关阅读:
    BZOJ3813 奇数国
    BZOJ2735 世博会
    BZOJ2081 [Poi2010]Beads
    BZOJ3276 磁力
    BZOJ2054 疯狂的馒头
    BZOJ2610 [Poi2003]Monkeys
    BZOJ2428 [HAOI2006]均分数据
    BZOJ2120 数颜色
    BZOJ2527 [Poi2011]Meteors
    补比赛——牛客OI周赛9-普及组
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3053843.html
Copyright © 2011-2022 走看看