"arn:aws:s3:::bucket-name/*"
基本上,问题是if语句中F的第一个值(对于j = 1)被忽略,即使theta的值是180.要检查,我已经完成了&#39 ;谁是theta'甚至将theta == 180写入它返回0的代码中。对于j = 2:4,尽管j = 2,代码仍能正常工作,同时产生θ值为180。它几乎就像它完全跳过if语句j = 1一样。我认为这与F是唯一具有三个非零分量的矩阵向量这一事实有关,但仍然没有&#39我知道如何解决这个问题。
答案 0 :(得分:0)
theta
可能是两倍且非常接近180但不完全180.00000001 ~= 180
。与给定的容差进行比较可能更好。
tol = 1e-3;
if abs(theta-180)<tol
...
end
Matlab也有内部浮点精度eps
,这可能是一个有趣的读物。
另外,'else-if'语句应该elseif
,但这可能只是复制粘贴的错误。