Floating point division

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Floating point division

Jump to solution
559 Views
woohoo
Contributor I

Hi,

 

I am using a GT16A microcontroller and am having issues when dividing 2 numbers that would form a floating point number. There is no problem with addition, subtraction and multiplication.

 

For example, 20/8 gives me a value of 2.0 and not the expected 2.5

 

I have tried increasing the stack size and I still haven't managed to figure out what is causing the problem. Any ideas?

Labels (1)
Tags (3)
0 Kudos
1 Solution
359 Views
kef
Specialist I

float f:

f = 20/8;

20 and 8 both are integers, division produces integer result, and then you request to convert integer 2 to float. To get 2.5 at least one of dividers has to be FP.

View solution in original post

0 Kudos
2 Replies
359 Views
ZhangJennie
NXP TechSupport
NXP TechSupport

1. you need have floating lib support. when creates new project, choose floating library support for your project.

2. do like this:

float f;

f= (float)20/(float)8;

0 Kudos
360 Views
kef
Specialist I

float f:

f = 20/8;

20 and 8 both are integers, division produces integer result, and then you request to convert integer 2 to float. To get 2.5 at least one of dividers has to be FP.

0 Kudos