# Why does "find" command fail to find a number in this vector?

1 Ansicht (letzte 30 Tage)
Emmanuele Mereu am 12 Apr. 2017
Bearbeitet: Stephen23 am 12 Apr. 2017
Hello everybody, I use MATLAB as a beginner and I would like to understand why the "find" command does not work in this particular case.
I must know the position occupied by the number 0.24 in this vector:
v=0.01:0.01:4;
In the variable editor I see that 0.2400 is stored in row 1, column 24, so I wrote this instruction:
pointer=find(v==0.24)
in the workspace without ";" so that i can see the output, but instead of "pointer=24" as I expected this message appeared:
"pointer = 1×0 empty double row vector"
How is that possible?
Also, if I search other numbers it happens that "find" can determine the position of, for example, 0.25 but it returns the same message of empty vector searching 0.29.
Thaks.
##### 2 KommentareKeine anzeigenKeine ausblenden
Stephen23 am 12 Apr. 2017
Bearbeitet: Stephen23 am 12 Apr. 2017
Emmanuele Mereu am 12 Apr. 2017
Bearbeitet: Stephen23 am 12 Apr. 2017
Using fprintf('%.30f\n',v(24)) as you suggested in the first link I realized the problem. Tank you again for the quick answer.

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

Jan am 12 Apr. 2017
##### 0 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Weitere Antworten (2)

Santhana Raj am 12 Apr. 2017
The issue is with representation of floating point numbers. Since the variable 'v' is double, it cannot exactly represent/store 0.024. Hence you cannot compare for exact value. Instead you can try this:
find((v<=0.245) & (v>=0.239))
Hope this helps.
##### 0 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

Thorsten am 12 Apr. 2017
You can use
find(round(100*v) == 24)
The reason that the straight-forward approach does not work is the representation of floating point numbers, as already mentioned above.
##### 0 Kommentare-2 ältere Kommentare anzeigen-2 ältere Kommentare ausblenden

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Introduction to Installation and Licensing finden Sie in Help Center und File Exchange

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by