pi01.c

来自「并行计算的演示程序」· C语言 代码 · 共 26 行

C
26
字号
#include <omp.h>static long num_steps = 100000;double step; #define NUM_THREADS 2 void main () {	  	  int i; 	  	  double x, pi, sum[NUM_THREADS]; 	  step = 1.0/(double) num_steps; 	  omp_set_num_threads(NUM_THREADS); #pragma omp parallel private(i){			double x;		int id;	  	id = omp_get_thread_num();       		sum[id] = 0; 		#pragma omp for	 	for (i=0;i< num_steps; i++){		 	 x = (i+0.5)*step; 		  	sum[id] += 4.0/(1.0+x*x); 	  	} 	  }for(i=0, pi=0.0;i<NUM_THREADS;i++)pi += sum[i] * step; printf("Pi = %lf\n",pi);} 

⌨️ 快捷键说明

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