Borrar filtros
Borrar filtros

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

3 visualizaciones (últimos 30 días)
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

Respuesta aceptada

Matt J
Matt J el 28 de Dic. de 2019
Editada: Matt J el 28 de Dic. de 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

Más respuestas (1)

Image Analyst
Image Analyst el 28 de Dic. de 2019

Categorías

Más información sobre Introduction to Installation and Licensing en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by