![]() |
|
![]() |
楼主(阅:60/回:0)实例2:精度限制与定义域设计(f(t) = 1 - 10^(-t)) 规则定义: 规则:f(t) = 1 - 10^(-t) 核心原则:规则定义域最大值 T_max 必须根据其声明的规则精度设定,以确保输出不超出精度表示能力,避免舍入错误。 在10位精度计算机上的设计: 定义域: t ∈ [0, 9] // 因为 t>=10 时,10^(-t) 可能小于机器epsilon 分析: 通过在设计时严格限定定义域,规则避免了执行时可能出现的精度溢出错误,保证了输出的确定性和可靠性。规则精度: 10位小数 执行过程: t=0: f(0)=0 → 事件 (0,f,0) t=1: f(1)=0.9 → 事件 (1,f,0.9) t=2: f(2)=0.99 → 事件 (2,f,0.99) ... t=9: f(9)=0.999999999 → 事件 (9,f,0.999999999) // t=10 不执行,超出定义域 在5位精度计算机上的设计: 定义域: t ∈ [0, 4] // 因为 t>=5 时,10^(-t) 无法在5位精度下精确表示 规则精度: 5位小数 执行过程: t=0: f(0)=0 → 事件 (0,f,0) t=1: f(1)=0.9 → 事件 (1,f,0.9) t=2: f(2)=0.99 → 事件 (2,f,0.99) t=3: f(3)=0.999 → 事件 (3,f,0.999) t=4: f(4)=0.9999 → 事件 (4,f,0.9999) // t=5 不执行,超出定义域 跑跑啦航模 讯客分类信息网 ![]() |