MATLAB: Why taking mod this problem is occur ? where is the problem.

Embedded CoderHDL CoderMATLABmatlab codermod

r = 3.8;
size = 9;
L(1)= 0.23;
for i=2:size
L(i) = r*L(i-1)*(1-L(i-1));
end
for i=1:9
S(i)=floor(abs(L(i)));
A(i)=abs(L(i));
D(i)=(A(i)-S(i))*10^14;
K(i)=mod(D(i),256);
end
and why some values of k in decimal points.?

Best Answer

  • Why not? Have you looked at your A (which is equal to L)? None of its values are integer. The remainder of a division of a non-integer value by an integer is never going to be an integer, so it's no surprise that mod return non-integer values.
    Notwithstanding the fact that none of the loops are needed (the first one can be replaced by filter), have you also noticed that your S is all 0s? I suspect you coded the whole thing completely wrong. Like your previous question you do not explain what the overall goal is.