Is it a bug?
조회 수: 4 (최근 30일)
이전 댓글 표시
I found a weird situation with the number "1.4"
v=0:0.01:5;
vd=1.4;
a=0;
for i=1:length(v)
if v(i)==vd
a=1
end
end
This code doesn't make the value of "a" become "1." However, if I change the value of "vd" to any other numbers (eg. vd=1.5), this code works well. Also, if I change the range of "v" to "v=0:0.01:2", it works as well. I don't know what's wrong with my orignal codes. Can anyone help me? Thank you very much!
댓글 수: 0
채택된 답변
추가 답변 (1개)
Image Analyst
2020년 2월 9일
Yes, you do have a bug in your program.
You compared floating point numbers with == instead of ismembertol().
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!