You like building blocks. You especially like building blocks that are squares. And what you even like more, is to arrange them into a square of square building blocks!
However, sometimes, you can't arrange them into a square. Instead, you end up with an ordinary rectangle! Those blasted things! If you just had a way to know, whether you're currently working in vain… Wait! That's it! You just have to check if your number of building blocks is a perfect square.
Given an integral number, determine if it's a square number:
In mathematics, a square number or perfect square is an integer that is the square of an integer; in other words, it is the product of some integer with itself.
The tests will always use some integral number, so don't worry about that in dynamic typed languages.
-1 => false
0 => true
3 => false
4 => true
25 => true
26 => false
var isSquare = function(n){
const square_n = Math.sqrt(n);
if(isNaN(square_n)) {
return false;
}
for(i=0;i<=Math.floor(square_n); i++) {
if(Math.pow(i,2) == n) {
return true;
}
}
return false;
}
function isSquare(n) {
return Math.sqrt(n) % 1 === 0;
}
const isSquare = n => Number.isInteger(Math.sqrt(n));