# Square root of a number using log

For a given number find the square root using log function. Number may be int, float or double.

Examples:

```Input  : n = 9
Output : 3

Input  : n = 2.93
Output : 1.711724
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

We can find square root of a number using sqrt() method.

## C++

 `// C++ program to demonstrate finding ` `// square root of a number using sqrt() ` `#include ` ` `  `int` `main(``void``) ` `{ ` `    ``double` `n = 12; ` `    ``printf``(``"%lf "``, ``sqrt``(n)); ` `    ``return` `0; ` `} `

## Java

 `// Java program to demonstrate finding ` `// square root of a number using sqrt() ` ` `  `import` `java.io.*; ` ` `  `class` `GFG { ` `    ``public` `static` `void` `main (String[] args) { ` `    ``double` `n = ``12``; ` `    ``System.out.println(Math.sqrt(n)); ` ` `  ` `  `// This code is contributed by akt_mit ` `    ``} ` `} `

## Python3

 `# Python3 program to demonstrate finding ` `# square root of a number using sqrt() ` `import` `math ` ` `  `if` `__name__``=``=``'__main__'``: ` `    ``n ``=` `12` `    ``print``(math.sqrt(n)) ` ` `  `# This code is contributed by ` `# Sanjit_Prasad `

## C#

 `// C# program to demonstrate finding ` `// square root of a number using sqrt() ` `using` `System; ` ` `  `class` `GFG ` `{ ` `public` `static` `void` `Main() ` `{ ` `    ``double` `n = 12; ` `    ``Console.Write(Math.Sqrt(n)); ` `} ` `} ` ` `  `// This code is contributed ` `// by Akanksha Rai `

## PHP

 ` `

Output :

`3.464102 `

We can also find square root using log2() library function:

## C++

 `// C++ program to demonstrate finding ` `// square root of a number using log2() ` `#include ` ` `  `double` `squareRoot(``double` `n) ` `{ ` `    ``return` `pow``(2, 0.5*log2(n)); ` `} ` ` `  `int` `main(``void``) ` `{ ` `    ``double` `n = 12; ` `    ``printf``(``"%lf "``, squareRoot(n)); ` `    ``return` `0; ` `} `

## Java

 `// Java program to demonstrate finding  ` `// square root of a number using log2()  ` `import` `java.io.*; ` ` `  `class` `GFG  ` `{ ` `static` `double` `squareRoot(``double` `n)  ` `{  ` `    ``return` `Math.pow(``2``, ``0.5` `* (Math.log(n) / ` `                              ``Math.log(``2``)));  ` `}  ` ` `  `// Driver Code ` `public` `static` `void` `main (String[] args)  ` `{ ` `    ``double` `n = ``12``;  ` `    ``System.out.println(squareRoot(n));  ` `} ` `} ` ` `  `// This code is contributed by akt_mit  `

## Python

 `# Python program to demonstrate finding ` `# square root of a number using sqrt() ` `import` `math ` ` `  `# function to return squareroot ` `def` `squareRoot(n): ` ` `  `    ``return` `pow``(``2``, ``0.5` `*` `math.log2(n)) ` ` `  `# Driver program ` ` `  `n ``=` `12` `print``(squareRoot(n)) ` ` `  `# This code is contributed by ` `# Sanjit_Prasad `

## C#

 `// C# program to demonstrate finding  ` `// square root of a number using log2() ` `using` `System; ` ` `  `public` `class` `GFG{ ` `     `  `static` `double` `squareRoot(``double` `n)  ` `{  ` `     ``return` `Math.Pow(2, 0.5 * (Math.Log(n) /Math.Log(2))); ` `}  ` ` `  `     `  `    ``static` `public` `void` `Main (){ ` `            ``double` `n = 12;  ` `            ``Console.WriteLine(squareRoot(n));  ` `    ``} ` `//This code is contributed by akt_mit     ` `} `

## PHP

 ` `

Output:

```3.464101615137755
```

How does above program work?

``` let d be our answer for input number n
then n(1/2) = d
apply log2 on both sides
log2(n(1/2)) = log2(d)
log2(d) = 1/2 * log2(n)
d = 2(1/2 * log2(n))
d = pow(2, 0.5*log2(n))  ```

This article is contributed by Tumma Umamaheswararao from Jntuh College of Engineering . If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

My Personal Notes arrow_drop_up

Article Tags :
Practice Tags :

3

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.