How do I solve the following problem with rounding?

I run the following code:
clear all
x=-2:0.1:2;
find(x==0.9)
I get:
ans = Empty matrix: 1-by-0
How can I fix this problem? The version I use is R2013a.
Thanks! niko

1 件のコメント

Jan
Jan 2014 年 10 月 21 日
編集済み: Jan 2014 年 10 月 21 日
Avoid the clear all, because this is more brute than useful.
This is one of the most frequently asked questions. I suggest to read the other ones also: http://matlab.wikia.com/wiki/FAQ

サインインしてコメントする。

回答 (2 件)

Amir
Amir 2014 年 10 月 21 日
編集済み: Amir 2014 年 10 月 21 日

1 投票

Please try this:
x=-2:0.1:2;
find(abs(x-0.9) < eps)
ans =
30
Pierre Benoit
Pierre Benoit 2014 年 10 月 21 日

0 投票

You can use a tolerance :
find(abs(x-0.9) < tol)

カテゴリ

ヘルプ センター および File ExchangeData Types についてさらに検索

質問済み:

2014 年 10 月 21 日

編集済み:

Jan
2014 年 10 月 21 日

Community Treasure Hunt

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

Start Hunting!

Translated by