The problem I am trying to solve is this:

When the user provides a whole number, the program returns the next whole number which is a perfect square.

For example, if I provide 5, then the program will check if 6, or 7, or 8, or 9 are perfect squares. It will detect 9 as being a perfect square and tell you that 3 times 3 is 9.

My pseudo-code is as follows:

1. take input as variable "n" of type int.

2. create a for loop which starts at 1 and runs till i = n.

3. the body of the for loop will calculate n/i and compare it with i for equality.

e.g. If the user passes 9, then the first iteration will be as follows:

9/1 = 9 (false)

second iteration:

9/2 = 4.5 (false)

third iteration:

9/3 = 3 (true, because i equals n)

4. The program will stop and tell us that "i" times "i" equals "n"

In this case, 3 times 3 equals 9

I wrote the following code, but I know that I have to account for modulus and probably use a float or double. I'm also not sure if my i == n should be i < n, instead.

Needless to say, my program does not work and I'm missing a few things