以下是一个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