MATLAB Answers

huda nawaf
0

how convert fraction into integer?

Asked by huda nawaf
on 11 Jan 2012

hi, how convert fraction part into integer :

30.6789 to 6789

thanks

  2 Comments

i want add something

when i get 6789 for ex.
i want change it into 6790 for ex.
and return this no. into fraction such as: 30.6790

thanks

Why not just add .0001 ?

Tags

Products

No products are associated with this question.

2 Answers

Answer by Jonathan Sullivan on 11 Jan 2012

Looks like you want to round to the nearest 0.001. You can do this with the following:

x = 30.6789 % Or whatever your data is
base = 0.001; % Or whatever you are rounding too.
x_rounded = round(x./base).*base;

Hope this helps!

  2 Comments

thanks,

but i need isolate the integer from fraction , then i can change the fraction as i need.

i need get the fraction part whatever it, i do not know it and do not know it's lengths.

i need the fraction part alone , then may hide in it bits then return it as fraction after modify it

The fraction you are looking for would have to be in base 10, but in base 10 it would be inappropriate to work at the *bit* level; instead you would have to work at the *dit* level (though the proper name for a "dit" is a "ban"; http://en.wikipedia.org/wiki/Ban_%28information%29)

Mixing base 10 and base 2 needs to be done very carefully!


Answer by Image Analyst
on 11 Jan 2012

How about this:

a=30.6789;
out = (a - floor(a)) * 10000

You do need the base, for example 10000. Why? Because the fraction never ends as I'm sure you know because you've read the FAQ. Want proof? Check this out:

format long;
a  % Display it.  It won't be 30.6789!
>> a =
  30.678899999999999

So that's why you have to pick some number of decimal places.

  1 Comment

For the benefit of those who might not have read the referenced FAQ,
http://matlab.wikia.com/wiki/FAQ#Why_is_0.3_-_0.2_-_0.1_.28or_similar.29_not_equal_to_zero.3F


Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!