为什么我的列表中会出现零?

时间:2017-11-02 21:39:08

标签: list plot octave

我不明白为什么我的列表会比我需要的更多两个零。

这是我的代码:

x=(0:0.01:12);
a=3;
y=cos(2*pi*2*x);
hold on
liste_A(1:1:72)=0;
for k=0:1:72
   for z=0:0.01:12
      vergleich = fix(100*k*1/6)/100;
      if(vergleich == z)
         liste_A(k+1)=z;
      end
   end
end
bla=(0:1/6:12)
stem(bla,liste_A)

通常我的列表应继续使用值0.83,但我保留零。看到这张图片:

enter image description here

1 个答案:

答案 0 :(得分:0)

您正在看到有限的精确效果。如果运行修改后的代码,您将看到比较的两个值与k = 5的情况不相等。

hold on
output_precision(18)
liste_A(1:1:72)=0;
for k=0:1:72
  for z=0:0.01:12
    vergleich = fix(100*k*1/6)/100;
    if (abs(vergleich-z)<1e-15)
      liste_A(k+1)=z;
      if (k==5)
        fix(100*k*1/6)/100
        z
      end
    end
  end
end
bla=(0:1/6:12)
stem(bla,liste_A)
相关问题