Find if the given number is a Perfect Square

A Perfect square is a whole number which is produced by multiplying two equal integers. In other words, a number which has a square root as an integer is called a Perfect square. Examples are 1, 4, 9, 25, .. and such.

For any given number, we would need to find if there is a number which multiplied by itself results in the same number.

This can be implemented in two ways: one by looping till half the number and check if at each iteration multiplying the counter with itself results in the number.


        public static bool IsPerfectSquare(int n)
        {
            for (int i = 1; i <= n / 2; i++)
            {
                if (i * i == n)
                {
                    return true;
                }
            }

            return false;
        }

Or by using the Math library and find the square root of the number. Then see if the obtained square root is an integer or not.


        public static bool IsPerfectSquareBySqRoot(int n)
        {
            double root = Math.Sqrt(n);

            if (root - Math.Floor(root) == 0)
            {
                return true;
            }

            return false;
        }

Default image
Sriram Mannava

I'm a full-stack developer and a software enthusiast who likes to play around with cloud and tech stack out of curiosity.

Leave a Reply