计算会引起误差,所以一般计算低于某个值,就没有意义了,这个阈值就是eps,也就是精度。
eps是在函数程序中事先说明的常量,默认的eps = 2^(-52),是控制迭代精度的,相当于微积分里面的无限小值。
在matlab里
eps(1/2) = 2^(-53)
eps(1) = 2^(-52)
eps(2) = 2^(-51)
举个例子:
#include<stdio.h> void main(){ long fun(int n); int i; double e=0; double eps=1e-6; //eps表示精度 此处指10的-6次方 for(i=0;1.0/fun(i)>eps;i++) { e+=1.0/fun(i); } printf(e=%lf\n,e); } long fun(int n) //求n!的函数 { if(n==0) return 1; else return n*fun(n-1); }
原文地址:https://www.jb51.cc/csharp/1193170.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。