【发布时间】:2017-06-09 01:16:53
【问题描述】:
显然,我是个新手,在我的学校学习高级 c++,我正在做家庭作业,当我偶然发现如何确定整数是否是完美平方时遇到了问题在这段代码中。
if (num <= 0 || sqrt(num) != static_cast<int>(sqrt(num)))
throw "Error: The number is not a perfect square.\n";
return sqrt(num);
如果可能作为异常函数,我只是不太明白 || 之后的部分作品。并想知道以供将来参考。
【问题讨论】:
-
static_cast<int>(sqrt(num))是一种写“num平方根的下限”的方法,希望对您有所帮助。 -
拿一张纸和一支铅笔。现在选择一个数字,并将其代入公式,看看会发生什么。尝试随机数和“完美平方”的数字,例如 36 或 49。您很快就会找到自己的答案。
标签: c++ number-theory