圆周率(Pi)是圆的周长与直径的比值,一般用希腊字母π表示,是一个在数学及物理学中普遍存在的数学常数。π也等于圆形之面积与半径平方之比。是精确计算圆周长、圆面积、球体积等几何形状的关键值。 圆周率是一个无理数,即无限不循环小数。在日常生活中,通常都用3.14代表圆周率去进行近似计算。而用十位小数3.141592654便足以应付一般计算。即使是工程师或物理学家要进行较精密的计算,充其量也只需取值至小数点后几百个位。
1965年,英国数学家约翰·沃利斯(John Wallis)出版了一本数学专著,其中他推导出一个公式,发现圆周率等于无穷个分数相乘的积。2015年,罗切斯特大学的科学家们在氢原子能级的量子力学计算中发现了圆周率相同的公式: pi/4 = 1/1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + ……
#include <stdio.h>
#include <math.h>
int main()
{
float pi = 0;
int sign = 1; // 正负符号
float deno = 1; // 分母
float item = 1; // 项
// fabs是求绝对值的函数,在math.h中声明,在math.c中定义
// 1e-6中的"-"左右两侧不能有空格;等价于0.000001。同理1e-3等价于0.001
while(fabs(item) >= 1e-6)
{
pi += item;
sign = -sign; // 根据公式,每计算一项,就得变动一次正负号
deno +=2; // 分母每次都自加2
item = sign / deno; // 第几项的值,用于下一轮计算
}
pi = 4 * pi;
printf("pi = %f", pi);
return 0;
}
运行结果:
pi = 3.141594
注意,这里是精确到小数点后六位,这意味着小数点后的最后一位数字可能是不准确的。
默写程序