求一个数的平方

Finding the sqrt of a number

所以我只是想写一个程序,让用户输入一个大于 10 的数字,然后找到这个数字的平方根。但是我应该多次开平方根运算以使输入的数字的平方根小于4。之后,我应该打印数字开方根的初始值和开平方根操作的次数完毕。我似乎没有发现我编写的程序有什么问题。你能帮我吗?

   public static void main(String[] args) {
   int counter = 1 ; 
   double sqrt  , sqrt1 , n ; 



   Scanner input = new Scanner (System.in);
   do{
       System.out.print("Enter any number : ");
       n = input.nextInt();

   }while(n < 10);

   sqrt = Math.sqrt(n);

 while (sqrt > 4){
     sqrt1 = Math.sqrt(sqrt);
     counter++ ;
 }

   System.out.println("The square root of the entered number is : " + sqrt);
   System.out.println("The square root operation was made : " + counter + " time(s)");


}

}

看看这个循环:

while (sqrt > 4){
    sqrt1 = Math.sqrt(sqrt);
    counter++ ;
}

您正在检查 sqrt 是否大于 4,但您没有在循环内修改 sqrt 的值,因此 sqrt > 4 将永远保留 true 并且循环将永远迭代。