%function [flag] =verify(area)
[FileName,PathName,FilterIndex]= uigetfile('*.tif','Select the signature file');
display(PathName)
m=[PathName,FileName];
area=nor_area(m);
%display(area)
%area=0.8707;
class(area)
flag=0;
extract=xlsread('D:\Project\Image_processing\important\best.xlsx', 'CW4:CW17');
c=numel(extract);
display(c)
l=extract(1);
class(l)
display(l)
for k = 1:c
%x=extract(k);
if (l==area && flag==0)
% display(extract(k));
flag=1;
display(flag)
end
end
display(flag)
Приведенный выше мой код для проверки, я не могу сравнить «l == area», даже если значения одинаковы, я не могу войти в цикл. Если я попробую передать значение, предположим, что l = 0.9999, и область, которую я получу, будет одинаковой, если я отправил значение l явно, это работает. !! но если я попытаюсь использовать какую-то функцию и передаю то же значение, она не будет работать. Я попытался проверить тип с помощью класса, оба возвращаются дважды.Matlab if loop not working
Может кто-нибудь, пожалуйста, помогите мне с этим, и если этот подход не подходит, предложите любую альтернативу, которая может быть использована.
Возможно, значения не совпадают. Попробуйте выполнить печать '(l - area)'. –
Значение этого значения очень мало и не равно 0 – Aps18