⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 calculatepi.java

📁 lab1为多线程计算圆周率的程序 lab2为多线程计算矩阵乘法的程序 有实验报告和说明文档
💻 JAVA
字号:
package lab1;
import java.math.*;

public class CalculatePi {

	static long num_steps=100000000; 
	 static String num="1000000";
	    BigDecimal sum = new BigDecimal(0);
	    double step = 0;
	    double pi = 0;
	public double calculate() {
//		Random r = new Random();
//		for(int i=0;i<num_steps;i++) {
			/*
			x = BigDecimal.valueOf(r.nextDouble());
			y = BigDecimal.valueOf(r.nextDouble());
			BigDecimal temp1;
			BigDecimal temp2;
			BigDecimal temp3;
			temp1 = x.multiply(x);
			temp2 = y.multiply(y);
			temp3 = temp1.add(temp2);
		
			if(temp3.compareTo(BigDecimal.valueOf(1.0))==-1) n++;
		*/
//			x = r.nextDouble();
//			y = r.nextDouble();
//			if(x*x+y*y<=1.0) n++;			
	    		int i;	
	    		   double x, sum = 0.0;

	    		   step = 1.0/(double) num_steps;
	    		   for (i=0; i< num_steps; i++){
	    		      x = (i+0.5)*step;
	    		      sum = sum + 4.0/(1.0 + x*x);
	    		   }
	    		   pi = step * sum;
		
		return pi;
		
	}
	
	public static void main(String args[]) {
		CalculatePi obj = new CalculatePi();
//		BigDecimal pi = new BigDecimal(0);
//		pi.setScale(100);
		double pi = 0;
		long time1;
		long time2;
		time1 = System.currentTimeMillis();
		pi= obj.calculate();
		time2 = System.currentTimeMillis();
		
		System.out.println("Pi is "+pi);
		System.out.println(time2-time1);
		
	}
}
	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -