#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int prime(int a,int b)
{
int i;
for(i = 2;i<=b;i++)
if(a % i == 0 && b % i == 0) return 0;
return 1;
}
int main()
{
int n,i,j,sum;
double pi;
int *p;
while(scanf("%d",&n)&& n!= 0)
{
p = (int *)malloc(sizeof(int));
sum = 0;
for(i = 0;i<n;i++)
scanf("%d",&p[i]);
for(i = 0;i<n;i++)
for(j = i+1;j<n;j++)
if(p[i]>p[j])
{
if(prime(p[i],p[j])) sum++;
}
else {
if(prime(p[j],p[i])) sum++;
}
if(sum){
pi = sqrt(3*1.0*n*(n - 1)/sum);
printf("%.6lf\n",pi);
}
else printf("No estimate for this data set.\n");
}
}zoj 1337 Pi
最新推荐文章于 2020-04-26 16:49:00 发布
本文介绍了一个使用C语言编写的程序,该程序用于找出输入整数数组中所有成对的素数,并根据找到的素数对数量来估算π值。程序首先读取整数的数量,然后接收这些整数并进行两两比较,使用辅助函数检查是否为素数对。如果找到素数对,则通过特定公式估算π值。
713

被折叠的 条评论
为什么被折叠?



