Equals numbers returns not equal
조회 수: 4 (최근 30일)
이전 댓글 표시
Hello I have a code like below:
figure
arr = [0.0207,0.6371,0.7504,0.1585,0.3091,0.5112];
for i=1:6
item = arr(i);
image = NewImage;
for r=1:row
for c=1:column
temp = image(r,c,1);
if item ~= temp
image(r,c,:) = 0;
end
end
end
subplot(3,2,i),imshow(image);
end
temp variable and item are both equal to 0.0207 but program flow enters if block. What is the problem?
댓글 수: 0
채택된 답변
Clemens Gersch
2020년 5월 5일
편집: Clemens Gersch
2020년 5월 5일
Are you sure that they are exactly the same?
Try
format long
and then display your values again. I guess that temp is only roughly 0.0207 and not exactly.
If that is the reason for your problem, you can try the following:
if item ~= round(temp,4)
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!