Azzera filtri
Azzera filtri

Problem using the FIND function to identify the position of a negative decimal number.

3 visualizzazioni (ultimi 30 giorni)
Hello.
I need to find the position of a negative decimal number in a vector. The code I've used is as follows:
a = -2:0.05:0;
num = -0.95;
position = find(a==-0.95);
The problem is with some numbers like the one set in num. Although the number exists within the a vector, the result I get is:
1-0 empty double row vector
What could be the problem? and how can I fix it?. Thanks.
Best regards

Risposta accettata

Matt J
Matt J il 28 Dic 2019
Modificato: Matt J il 28 Dic 2019
The numbers you are comparing differ by small floating point errors,
>> a(22)-(-0.95)
ans =
-1.1102e-16
Use ismembertol, instead.
>> [~,position]=ismembertol(num,a)
position =
22

Più risposte (1)

Image Analyst
Image Analyst il 28 Dic 2019

Categorie

Scopri di più su Introduction to Installation and Licensing in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by