相关疑难解决方法(0)

什么是确定输入是否是完美正方形的好算法?

可能重复:
确定整数的平方根是否为整数的最快方法

有什么方法可以看出一个数字是否是一个完美的正方形

bool IsPerfectSquare(long input)
{
   // TODO
}
Run Code Online (Sandbox Code Playgroud)

我正在使用C#,但这与语言无关.

奖励点是为了清晰和简洁(这不是代码高尔夫).


编辑:这比我想象的要复杂得多!事实证明,双精度问题有两种表现形式.首先,Math.Sqrt采用了一个不能精确控制的长度(感谢Jon).

其次,当你拥有一个巨大的,接近完美的正方形时,双精度将失去小值(.000 ... 00001).例如,我的实现未通过Math.Pow(10,18)+1的测试(我的报告为真).

algorithm math perfect-square

85
推荐指数
3
解决办法
4万
查看次数

标签 统计

algorithm ×1

math ×1

perfect-square ×1