Herbert Fritsch wrote:

a = 3

b = 4

b / 2 + a

5

b / (2.0 + a)

0.80000000000000004

There must be something wrong. I' running the new Suse 9.0.

Not really. Think of the order of operations in mathematics.

Multiplication and division are ranked higher than addition. Using

parentheses for grouping is higher (before) mulitplication and division.

First example:

4 / 2 + 3 yields 2 + 3 yields 5

Second:

4 / (2.0 + 3)

Python coerces the 3 into a floating point number, so lets write all

these as floating points:

4.0 / (2.0 + 3.0)

Order of operations says do the parentheses first:

4.0 / 5.0 yields 0.8000000000000004

Theres a listing of Pythons order of operations somewhere in the

documentation on python.org (couldn't find it with a quick search).

:)