MATLAB: How to tell Matlab a loop index is an integer

integer indexMATLAB

I am perplexed by the fact that niether loop indeces or the number 3 are considered integers.
The script (called WhyNotIntegers)
for i = 1:3
idivide(i,3,'round')
end
produces these errors when run:
Error using idivide>idivide_check (line 66)
At least one argument must belong to an integer class.
Error in idivide (line 42)
idivide_check(a,b);
Error in WhyNotIntegers (line 2)
idivide(i,3,'round')
Error in run (line 96)
evalin('caller', [script ';']);

Best Answer

They're doubles that just happen to have integer values. Convert them to integers since that's what idivide wants. Try this:
for k = 1:3
idivide(int32(k), int32(3),'round')
end