Add Square Root by Babylonian Method (#2883)
This commit is contained in:
parent
e4fa83bd29
commit
101d08ae24
@ -0,0 +1,25 @@
|
|||||||
|
package com.thealgorithms.maths;
|
||||||
|
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
|
|
||||||
|
public class SquareRootWithBabylonianMethod {
|
||||||
|
/**
|
||||||
|
* get the value, return the square root
|
||||||
|
*
|
||||||
|
* @param num contains elements
|
||||||
|
* @return the square root of num
|
||||||
|
*/
|
||||||
|
public static float square_Root(float num)
|
||||||
|
{
|
||||||
|
float a = num;
|
||||||
|
float b = 1;
|
||||||
|
double e = 0.000001;
|
||||||
|
while (a - b > e) {
|
||||||
|
a = (a + b) / 2;
|
||||||
|
b = num / a;
|
||||||
|
}
|
||||||
|
return a;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,26 @@
|
|||||||
|
package com.thealgorithms.maths;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Assertions;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
public class SquareRootwithBabylonianMethodTest {
|
||||||
|
@Test
|
||||||
|
void testfor4(){
|
||||||
|
Assertions.assertEquals(2,SquareRootWithBabylonianMethod.square_Root(4));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void testfor1(){
|
||||||
|
Assertions.assertEquals(1,SquareRootWithBabylonianMethod.square_Root(1));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void testfor2(){
|
||||||
|
Assertions.assertEquals(1.4142135381698608,SquareRootWithBabylonianMethod.square_Root(2));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void testfor625(){
|
||||||
|
Assertions.assertEquals(25,SquareRootWithBabylonianMethod.square_Root(625));
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user