一个不大于10万的整数,它加上100后是一个完全平方数,同时加上268后也是一个完全平方数,请问该数是多少?

程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。


public class Main {
    public static void main(String[] args) {
        int data = 0;
        while (data <= 100000) {
            if (isSquare(data + 100) && isSquare(data + 256)) {
                System.out.println(data);
            }
            data++;
        }
    }

    /**
     * 判断一个数是不是完全平方数
     *
     * @param num 一个大于0的整数
     * @return true 如果是完全平方数
     */
    public static boolean isSquare(int num) {
        if (num < 0)
            return false;
        for (int i = 1; num > 0; i += 2)
            num -= i;
        return 0 == num;
    }
}

----结果错了哈哈哈更新一下---尴尬