[7 kyu] 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 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.

Examples

isSquare(-1) returns  false
isSquare(0) returns   true
isSquare(3) returns   false
isSquare(4) returns   true
isSquare(25) returns  true  
isSquare(26) returns  false

Solution :

def is_square(n):    
    if n < 0:
        return False
    elif n == 0:
        return True
    i = 1
    while i < n:
        m = i * i
        if m == n:
            return True
        elif m > n:
            return False
        i += 1

    return False # fix me
发布了16 篇原创文章 · 获赞 0 · 访问量 44

猜你喜欢

转载自blog.csdn.net/HM_773_220/article/details/104772006
今日推荐