无心人
发表于 2010-8-23 15:31:13
${920 + 8976*sqrt(106)} / 29709 = 3.1415926535897982$
无心人
发表于 2010-8-23 15:34:17
${3323 + 5904*sqrt(186)}/26688 = 3.1415926535897966$
${8098 + 14040*sqrt(53)}/35113 = 3.1415926535897951$
无心人
发表于 2010-8-23 15:46:47
双精度的pi的值的精度没写太高,重新写到
3.1415 92653 58979 323846
重新算了
不过仅凭机器内置双精度运算最多得到1e-18的结果
难道要动用mpfr么?
hujunhua
发表于 2010-8-23 16:46:01
凡是根号内含平方因子的,都按作弊论!:lol
无心人
发表于 2010-8-23 17:02:35
呃, 没注意
不改了,呵呵
继续贴
wayne
发表于 2010-8-23 17:07:58
19# 没——问题
it's something like this
http://zh.wikipedia.org/zh-cn/林德曼-魏尔斯特拉斯定理
无心人
发表于 2010-8-23 17:08:05
${2978 + 2820*sqrt(645)}/23745$
${5956 + 5640*sqrt(645)}/47490$
${8934 + 8460*sqrt(645)}/71235$
以上三个结果相同,都是
$3.1415926535897940170$
${5482 + 4789*sqrt(1170)}/53887=3.141592653589792593$
最后一个与$\pi$的误差是$6.454*10^{-16}$
无心人
发表于 2010-8-23 17:12:50
终止了,gcc默认的double精度已经超过了
机器显示最后一个误差是0了
无心人
发表于 2010-8-23 17:13:38
不得不用mpfr了
无心人
发表于 2010-8-23 17:17:06
大家有兴趣可以考虑另外一种形式
${a*sqrt(b) + c*sqrt(d)}/e$