storing floating point values in an array

I want to do a calculation which gives answer in float. then i want to store that answer in an array. when i tried to do so, the array is converting that float value to nearby integer. can anybody tell me how to get out of it.

1 Comment

We can not guess what are you doing by just reading the description. Please post your code.

Sign in to comment.

 Accepted Answer

If you declare a variable and insert values later, the type of the variable is not changed:
a = zeros(10, 1, 'uint8');
a(1) = pi;
class(a) % >> UINT8 !
disp(a)
% >> 3
Therefore the variable must be either defined explicitely using the wanted class:
a = zeros(10, 1, 'double');
% or simply: a = zeros(10, 1);
Or let Matlab choose the type automatically by omitting the explicite pre-allocation:
a(10) = theFunction();
Now you can start with the last element for an implicite pre-allocation.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Asked:

on 30 Jan 2012

Community Treasure Hunt

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

Start Hunting!