【发布时间】:2015-10-17 13:41:47
【问题描述】:
为什么下面h(theta) 的表达式有时会返回0,有时会返回NaN? h(theta) 包含对 theta = 0 的除零,并且应始终返回 NaN。如果我只要求h(0),一切正常。
但是,当它计算包含在多元素数组中的零时,它会返回 h = 0,而它应该返回 NaN。但如果专门评估仅为零的元素,则它应返回 NaN。
>> theta = [0 1]
theta =
0 1
第一个元素应该是NaN:
>> h = tan(theta)/(1+(tan(theta)/tan(2.*theta)))
h =
0 5.4220
当专门评估零元素时,它可以正常工作:
>> h = tan(theta(1))/(1+(tan(theta(1))/tan(2.*theta(1))))
h =
NaN
>> h = tan(theta(2))/(1+(tan(theta(2))/tan(2.*theta(2))))
h =
5.4220
【问题讨论】:
-
您可以将
>>放在输入行中,以便格式化和提高可读性。