设计函数int
sqrt(int x)
,计算 x 的平方根。
import Java.util.Scanner;
public class MySqrt
public static int sqrt(int n){
int left=1,right=(n+1)/2;
while(left<right){
int mid=(left+right)/2;
int result= mid*mid;
// int result2=(mid+1)*(mid+1);
if(result==n){
return mid;
}
else if(result>n){
right=mid-1;
}
else if(result<n){
left=mid+1;
}
}
int temp=right*right;
if(temp>n)
return right-1;
else return right;
}
public static void main(String[] args) {
//System.out.println(sqrt(100));;
Scanner sc=new Scanner(System.in);
String s;
while((s=sc.nextLine())!=null){
int value=Integer.parseInt(s);
System.out.println(sqrt(value));
}
}
}
输入格式
输入一个 整数 x,输出它的平方根。直到碰到文件结束符(EOF
)为止。
输出格式
对于每组输入,输出一行一个整数,表示输入整数的平方根。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。