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