在Java学习的过程中,需要经常拿一些小程序来练习。今天,我们就来看看一个利用蒙特卡洛算法计算圆周率,并输出指定半径的圆的周长和面积的小程序。
代码如下:
/** * auther 司机 */import java.util.Scanner; public class Test011 { static double MontePI(int n) { double PI; double x, y; int i, sum; sum = 0; for (i = 1; i < n; i++) { x = Math.random(); y = Math.random(); if ((x * x + y * y) <= 1) { sum++; } } PI = 4.0 * sum / n; return PI; } public static void main(String[] args) { int n; double PI; System.out.println("蒙特卡洛概率算法计算圆周率:"); Scanner input = new Scanner(System.in); System.out.println("输入点的数量:"); n = input.nextInt(); PI = MontePI(n); System.out.println("PI="+PI); double radius; double area; double circle; Scanner input2 = new Scanner(System.in); System.out.println("输入圆半径"); radius = input2.nextInt(); circle = 2*PI*radius; area = radius*radius*PI; System.out.println("The area is"+ area); System.out.println("The circle is"+ circle); } }
输出:
蒙特卡洛概率算法计算圆周率:输入点的数量:
然后你就可以在控制台输入点的个数,求圆周率的近似值,再输入想要求的圆的半径,就可以得到周长和面积了。
例:
蒙特卡洛概率算法计算圆周率:输入点的数量:9887766PI=3.141522968889029输入圆半径5The area is78.53807422222573The circle is31.415229688890292
关于蒙特卡洛算法计算圆周率近似值,作者之前的文章已有记载。
以上是本文关于计算圆周长和面积的全部内容,希望本文对大家有所帮助。
新闻热点
疑难解答
图片精选