判断是否是平方数
public static int judge (BigInteger x)///通过二分在区间(0,x)寻找是否有平方等于n的数
{
BigInteger left=BigInteger.ZERO,right=x,mid,ans;
int sign;
while(left.compareTo(right)<=0)///l<=r 注意有带等号
{
mid=left.add(right).shiftRight(1);//求出中间值mid=(right+left)/2
ans=mid.multiply(mid);///ans=mid*mid
sign=ans.compareTo(x);///比较区间中间值的平方与x的大小
if(sign==0) return 1;///相等
else if(sign<0) left=mid.add

本文提供Java实现大数开方的模板以及判断一个大数是否为平方数的方法,参考相关博客资源。
最低0.47元/天 解锁文章
1233

被折叠的 条评论
为什么被折叠?



