Calculation with uint16 values

Hi,
I calculate with matrices of type uint16 recorded by cameras. But I've got a general problem with the calculation especially by fraction. Example:
A=[8 9 2; 9 6 5; 1 0 9]; % class double B= uint16(A); % class uint16
A/10=[0.8 0.9 0.2; 0.9.0.6 0.5; 0.1 0 0.9] B/10=[1 1 0; 1 1 0; 0 0 1 ]
Can anybody explain me the results ? The values seems to be rounded up. Thanks for support.

 Risposta accettata

José-Luis
José-Luis il 26 Giu 2014
Modificato: José-Luis il 26 Giu 2014
When you divide an integer, it will produce an integer and just ignore the decimal part. For instance 3/2 will produce 1. If you want the decimal value, please use:
double(A) / double(B)

1 Commento

Jan
Jan il 26 Giu 2014
Modificato: Jan il 26 Giu 2014
Thanks for fast support. So it is a exemplary casting problem as in java.

Accedi per commentare.

Più risposte (0)

Tag

Richiesto:

Jan
il 26 Giu 2014

Modificato:

Jan
il 26 Giu 2014

Community Treasure Hunt

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

Start Hunting!

Translated by