📜  算法|杂项|问题15

📅  最后修改于: 2021-06-29 22:02:14             🧑  作者: Mango

484的跟随函数的返回值是多少?总的来说是什么?

bool fun(int n)
{
    int sum = 0;
    for (int odd = 1; n > sum; odd = odd+2)
       sum = sum + odd;
    return (n == sum);
}

(A)错误,它将检查给定数字是否为3的幂
(B)错误,它将检查给定数字是否为偶数
(C)错误,它检查给定数字是否为奇数
(D)是的,它检查给定的数字是否为完美平方。答案: (D)
说明:给定的函数将所有奇数1、3、5、7、9、11…相加。直到总和小于n。如果总和等于n,则返回true。基本上,这是对完美平方数的测试。

所有理想的平方数都可以写为奇数之和。

4 = 1 + 3
9 = 1 + 3 + 5
16 = 1 + 3 + 5 + 7
36 = 1 + 3 + 5 + 7 + 9
49 = 1 + 3 + 5 + 7 + 9 + 11
这个问题的测验