Java sqr sqrt(int n)

Here you can find the source of sqrt(int n)

Description

sqrt

License

Apache License

Declaration

public static int sqrt(int n) 

Method Source Code

//package com.java2s;
/**//from  www. ja v  a2  s.c  o  m
 * Copyright 2008 - 2011
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 * 
 * @project loonframework
 * @author chenpeng
 * @email?ceponline@yahoo.com.cn
 * @version 0.1
 */

public class Main {
    public static int sqrt(int n) {
        int s = (n + 65536) >> 1;
        for (int i = 0; i < 8; i++) {
            s = (s + div(n, s)) >> 1;
        }
        return s;
    }

    static public final float sqrt(float a) {
        return (float) Math.sqrt(a);
    }

    public static int div(int x, int y) {
        long z = (((long) x) << 32);
        return (int) ((z / y) >> 16);
    }
}

Related

  1. sqrt(final double i)
  2. sqrt(final double x)
  3. sqrt(float a)
  4. sqrt(float a)
  5. sqrt(float f)
  6. sqrt(int val)
  7. sqrt(long val)
  8. sqrt(long x)
  9. sqrt(Short a)