精华内容
下载资源
问答
  • Java 计算根号2

    千次阅读 2018-12-13 10:41:35
    计算根号2有两种方法 1.二分查找 2.牛顿法 public static void main(String[] args) { double sqrNum = getSqrNum(2); System.out.println(sqrNum); double sqrNum2 = getSqrNum2(2); System.out....

    计算根号2有两种方法

    1.二分查找

    2.牛顿法

    public static void main(String[] args) {
    		double sqrNum = getSqrNum(2);
    		System.out.println(sqrNum);
    
    		double sqrNum2 = getSqrNum2(2);
    		System.out.println(sqrNum2);
    
    	}
    
    	/**
    	 * 牛顿法
    	 * x(n+1)=0.5*(x(n)+num/x(n))
    	 * @param num
    	 * @return
    	 */
    	public static double getSqrNum(int num){
    		double result=1;
    		for(int i=1;i<100;i++){
    			result=0.5*(result+num/result);
    		}
    		return result;
    	}
    	/**
    	 * 二分查找法
    	 */
    	public static double getSqrNum2(int num){
    		double left=1;
    		double right=2;
    		while(left<=right){
    			double mid=(left+right)/2;
    
    			if(errorRange(mid,num)){
    				return mid;
    			}
    			if(mid*mid>num){
    				right=mid;
    			}else{
    				left=mid;
    			}
    		}
    		return left;
    	}
    	public static boolean errorRange(double num,int target){
    		if(Math.abs(num*num-target)<1e-5){
    			return true;
    		}else{
    			return false;
    		}
    	}

     

    展开全文
  • 使用java求解根号2

    2020-11-21 16:31:38
    首先根号2一定在0到2之间, 找出0和2的中点1,1的平方还是1,小于2,所以根号2一定在1到2之间; 找出1和2的中点1.5,1.5的平方是2.25,大于2,所以根号2一定在1到1.5之间; 找出1和1.5的中点1.25,1.25的平方是1....

    二分法
    首先根号2一定在0到2之间,
    找出0和2的中点1,1的平方还是1,小于2,所以根号2一定在1到2之间;
    找出1和2的中点1.5,1.5的平方是2.25,大于2,所以根号2一定在1到1.5之间;
    找出1和1.5的中点1.25,1.25的平方是1.5625,小于2,所以根号2一定在1.25到1.5之间;
    以此类推,直到找到小数点后第k位。
    这种方法很简单,容易想到,但就是有些麻烦。代码如下:
    public static double gen(int k) {
            double left = 0;
            double right = 2;
            double middle = (left+right)/2;
            while(String.valueOf(middle).length()<=k+1) {
                if(Math.pow(middle, 2)<=2) {
                    left = middle;
                }
                if(Math.pow(middle, 2)>2) {
                    right = middle;
                }
                middle = (left + right)/2;
            }
            return middle;
        }
    }

    展开全文
  • Java语言编程计算根号2,要求不能调用math中的函数,要用循环来编写
  • public void Sprt2() { double num = 2 ; double left = 0 ; double right = num ; double ans = SprtFunction1(left , right , num) ; System.out.println(ans); } /** * 迭代 */ public double ...
  • //对5开根号后进行保留2位小数,四舍五入 System.out.println(BigDecimal.valueOf(Math.sqrt(5)).setScale(2, BigDecimal.ROUND_HALF_UP)); //对5开根号 System.out.println(“对5开根号”+Math.sqrt(5)); //3的4次方...

    public static void main(String[] args) {
    //对5开根号后进行保留2位小数,四舍五入
    System.out.println(BigDecimal.valueOf(Math.sqrt(5)).setScale(2, BigDecimal.ROUND_HALF_UP));
    //对5开根号
    System.out.println(“对5开根号”+Math.sqrt(5));
    //3的4次方计算公式
    System.out.println(“3的4次方计算公式”+Math.pow(3, 4));
    //绝对值
    System.out.println("-8的绝对值为:" + Math.abs(-8));
    //自然对数
    double e = Math.E;
    System.out.println(“e的自然对数为” + Math.log(e));
    /** Math 中的其他方法
    public static double exp(double x) //e^x
    public static double log(double x) //ln(x)
    public static double log10(double x) //log 10(x)
    public static double pow(double a,double b) //a^b
    public static double sqrt(double x) //√x
    **/
    }

    展开全文
  • java实现开根号

    万次阅读 2017-08-22 20:46:51
    java根号

    主要思路

    通过牛顿迭代法计算平方根。来吧,还是看代码ba..

        private static double sqrt(double c) {
            if (c < 0)
                return Double.NaN;
    
            double jingdu = 1e-15;
            double t = c;
            while (Math.abs(c - t * t) > jingdu)
                t = (c / t + t) / 2.0;// 迭代公式
            return t;
        }

    改进算法。。。

        public static double sqrt(double m) {
            double i = 0;
            int k = 0;
            while ((i * i) <= m)
                i += 0.1;
            for (int j = 0; j < 10; j++) {
                i = (m / i + i) / 2;
            }
            return i;
        }
    展开全文
  • 根号2计算方法(Java实现)

    千次阅读 2018-12-12 22:33:44
    读《西方哲学史》古希腊早期数学与天文学一章,看到一个有趣的求解根号2的方法,之前未曾见过。   思路如下:构造一个数对序列,初始值为(1,1), 然后对该数对依照如下规则进行演化: 下一个数对中的第一个...
  • java根号的开平方

    万次阅读 2017-10-19 15:23:38
    一般我们都使用Math.sqrt()来计算一个数n的平方根,但是结果是一个小数。在做数学题的时候我们是要保留根号的。这里提供带根号的开平方方法 //开平方,数组第一个放平方根前面的系数,第二个放根号里面无法开方的数 ...
  • java实现开根号的运算

    千次阅读 2020-04-21 22:43:37
    java实现开根号的运算 如果某个数字正好可以开根号2个整数,例如1,4,9等,那就很简单了。 如果某个数字不可以正好开根号2个整数,而且要保留几位精度,例如:2,3,5等,我们该怎么办呢????? 首先我们可以...
  • Java计算一个数的平方根(即:根号)

    千次阅读 2021-01-20 14:27:19
    计算并返回x的平方根(向下取整) 示例1 输入 2 返回值 1 import java.util.*; public class Solution { /** * 根据平方数的性质——连续n个奇数相加的结果一定是平方数。 * 如:9=1+3+5; * 16=1+3+...
  • 缺点:性能不高牛顿迭代法y = x^2 - 2 的图像其实,计算根号2就是计算与 X 轴的交点。切线是曲线的逼近曲线上任一一点 (a, a^2-2) 处的切线为 y=2ax-a^2-2这条切线和 X 轴的交点的横坐标为 0.5*(a + a/2);根据这个...
  • 根号2 java 牛顿法实现

    千次阅读 2014-11-03 18:56:07
    public class Newton {//牛顿法, ...//牛顿法计算运行时间 a=System.nanoTime(); Math.sqrt(2); long c=System.nanoTime()-a;//系统Math类的运算时间 System.out.println(b/c);//13倍啊,亲 } }
  • importjava.util.*;publicclassMain{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);Mainmain=newMain();doublen=sc.nextDouble();intm=sc.nextInt();System.out.printl...
  • 次方和平方根是数学中重要的计算,编程语言中也常用到,此处给出使用Java的类和对象实现计算次方和平方根的方法。代码如下 /* * To change this license header, choose License Headers in Project Properties. *...
  • public class Demo2 { public static void main(String[] args) { System.out.println(String.format("%.7f", getSqrt(2))); } public static double getSqrt(int x) { double freq = 0.00000001;;...
  • 根号2的值(两种方法 java实现)

    千次阅读 2019-10-23 16:25:29
    计算根号2的值,保留小数点后10位。二分查找法和牛顿迭代法
  • Java-求根号n

    2017-09-16 19:33:00
    平方,开根号java中是很简单的,Math.sqrt(double n)或者 Math.pow(double a, double b),求a的b次方。但是我们可以自己想想,这些方法到底是怎么实现的。 就拿开根号来解释,它有两种方法,二分法和牛顿迭代法。...
  • java实现开根号算法

    千次阅读 2018-05-03 00:04:00
    = (Xa+target/Xa)/2 ; } while (fabsf(Xa,Xb)> eps); return Xa; } // 二分法 精度是指两次mid值的差值 public static double SqrtByBisection( double target, double eps){ double min=1,...
  • Java计算圆周率

    千次阅读 2015-10-24 22:45:48
    最近很多同学来问我怎么用Java计算圆周率,其实并不是很难,用到的知识实际上是c语言的知识。  首先定义浮点数类型的pi,浮点数类型的dx,给dx以初始值1e-3(0.01),给dx这么小的初始值是为了方便计算,然后使用一个...
  • Java当中的相关数学计算 求 π System.out.println(Math.PI); 求sin(2) System.out.println(Math.sin(2)); 求arccos(-tan2 * tan3)的值 System.out.println(Math.acos(-Math.tan(2) * Math.tan...
  • 3439 平方数 -java java开方(开根号

    千次阅读 2019-09-11 09:44:45
    飞飞特别喜欢平方数,可是他数学并不好,你能帮他计算n与m之间所有平方数之和吗? 提示:若一个整数的开方还是整数,它就是平方数。例如:4、9、16、25是平方数。 Input 第一行T代表数据的组数。 接下来有T行,每...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,307
精华内容 922
关键字:

java计算根号2

java 订阅