SQUARE Probelm_codewars daily train9/27
2015-09-28 03:39
477 查看
questions come from www.codewars.com
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.
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.
More solutions from
You're a square!
A square of squares
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.
Task
Given an integral number, determine if it's asquare 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.
Examples
isSquare(-1) // => false isSquare( 3) // => false isSquare( 4) // => true isSquare(25) // => true isSquare(26) // => false
solution
var isSquare = function(n){ var sqrt; sqrt = Math.pow(n,1/2); return isIntegral(sqrt); // fix me } function isIntegral(n) { return (typeof(n)==="number") && (Math.trunc(n)===n);//or Math. round }
testcases
Test.describe("isSquare", function(){ Test.it("should work for some examples", function(){ Test.expect(!isSquare(-1), "Negative numbers cannot be square numbers"); Test.expect(!isSquare( 3)); Test.expect( isSquare( 4)); Test.expect( isSquare(25)); Test.expect(!isSquare(26)); }); Test.it("should work for random square numbers", function(){ var r, i; for(i = 0; i < 100; ++i){ r = (Math.random() * 0xfff0) | 0; Test.expect(isSquare(r*r), (r * r) + " is a square number"); } }); });
More solutions from
在JavaScript中判断整型的N种方法
相关文章推荐
- HT for Web 中Painter的介绍及用法
- HT for Web 中Painter的介绍及用法
- UVA 442 Matrix Chain Multiplication
- gtk+ 环境下,遇到assertion 'GTK_IS_NOTEBOOK (notebook)' failed,怎么破?
- 欧拉工程第74题:Digit factorial chains
- obtainKeywords
- 2015 ACM/ICPC Asia Regional Shanghai Online
- leetcode11 Container With Most Water
- Kafka错误1_kafka中 FailedToSendMessageException解决_修改host.name
- A child container failed during start
- Contains Duplicate III
- vs2010编译没有问题,然而运行出错Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted.
- MainPage.xaml
- 使用SDL2出现 “error LNK2019: 无法解析的外部符号 _SDL_main,该符号在函数 _main 中被引用” 时的可能错误记录
- Hdu1163 Eddy's digitai Roots(九余数定理)
- 真机测试INSTALL_FAILED_INSUFFICIENT_STORAGE解决办法
- 如何重装air
- main函数的参数:处理命令行选项
- 2015 ACM/ICPC Asia Regional Shanghai Online 1008
- Handling Complexity in the Halo 2 AI