# LabVIEW

cancel
Showing results for
Did you mean:

Solved!
Go to solution

## Return a wrong compare result

Hi, I tried to compare two value between a number and pi. The probes show that I have the same value but the VI equal compare return False.
Message 1 of 21
(3,611 Views)

## Re: Return a wrong compare result

pi is represented to about 15 decimal places in LabVIEW. The probe is showing only 5. There is more than likely a difference between the two numbers, but you need to see more decimal places to be sure. Try wiring the two values to indicators on your front panel that show more decimal places and inspecting them.

Thoric (CLA, CLED, CTD and LabVIEW Champion)

Message 2 of 21
(3,605 Views)

## Re: Return a wrong compare result

This has nothing to do with how many significant digits Pi has, and everything to do with how you cannot use the Equal operation on floating point numbers. This is not a bug, but a numeric reality because of how floating point numbers are stored in a computer. This questions comes up about once a month.
Message 3 of 21
(3,588 Views)

## Re: Return a wrong compare result

smercurion - does this not amount to the same thing? The values will not match due to the fact, in all reality, they are not the same, and are very unlikely to ever be the same? Thang will never get a true from the comparator because of this reason, and directing him to inspect a greater number of decimal places will highlight the difference between the two values.
Thoric (CLA, CLED, CTD and LabVIEW Champion)

Message 4 of 21
(3,579 Views)

## Re: Return a wrong compare result

Thank you guys.

As I guessed, I have a not exactly number I want. I decided to use a customize compare VI with difference after 6 precision digits.

Have a happy holiday.

Thang Nguyen

Message 5 of 21
(3,562 Views)

## Re: Return a wrong compare result

The ting to discuss is how I get rid of unwanted accuracy or precision because 12.1100000000001 are not equal 12.11 .

Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
Message 6 of 21
(3,561 Views)

## Re: Return a wrong compare result

This has been discussed quite bit in this thread.
Message 7 of 21
(3,554 Views)

## Re: Return a wrong compare result

Thoric wrote:
smercurion - does this not amount to the same thing?

Depends on your viewpoint. Essentially, yes, but it's due to the fundamental way that numbers are stored, and nothing to do with Pi, or how many significant digits there are. The same thing would happen with any other floating point number.

Besides, the purists would argue that you can never check if a number is equal to Pi since Pi is a transcendental number

Message 8 of 21
(3,520 Views)

## Re: Return a wrong compare result

Hi,

I really have trouble with this, cause sin(pi) is not 0. It will affect to many calculation results.

Message 9 of 21
(3,517 Views)

## Re: Return a wrong compare result

Sin (pi) is smaller than machine epsilon, which means that it is effectively zero.

As has been stated above,  equality comparisons with non-integer representations of numbers will always be problematic.  Several little VIs have been posted which address this issue in a variety of ways, mostly by doing inequality comparisons with a small limit range usingthe machine epsilon or user selected value.

Lynn

Message 10 of 21
(3,504 Views)