java循环平方根示例练习


以下是一个Java程序,该程序使用跳转控制语句来计算一个数字的平方根:

import java.util.Scanner;

public class SquareRoot {

    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);
        System.out.print("请输入一个非负数:");
        double num = input.nextDouble();

        if (num < 0) {
            System.out.println("输入的数字不合法!");
            return;
        }

        double guess = num / 2;
        while (true) {
            double newGuess = (guess + num / guess) / 2;
            if (Math.abs(newGuess - guess) < 0.0001) {
                System.out.println("数字 " + num + " 的平方根是 " + newGuess);
                return;
            }
            guess = newGuess;
        }
    }
}

该程序首先使用Scanner类获取用户输入的数字,并检查该数字是否为非负数。如果用户输入的数字小于0,则程序将输出错误消息并终止。

如果用户输入的数字是非负数,则程序使用一个while循环来计算该数字的平方根。循环的终止条件是当新的猜测值与上一个猜测值的差小于0.0001时,表示猜测已经足够接近实际的平方根了。

在循环中,程序使用平均值法来逐步逼近数字的平方根。具体来说,程序使用上一个猜测值和原始数字之间的平均值来计算新的猜测值。然后程序检查新的猜测值是否足够接近实际的平方根,如果是,则程序输出结果并终止循环。如果不是,则程序更新猜测值,并继续循环直到找到足够接近的平方根。


原文链接:codingdict.net