Find out how long after division will be an integer?

Hello! Is it possible to know when the condition will be met, what has been divided and the result is an integer?
A=[1:100];
for i=1:30
Ax(i)=A(i)/2;
if Ax(i) not a fractional number
Ax(i)=Ax(i);
else
break
end
end

Answers (2)

if mod(x,1)==0 then x is an whole number/ integer.

2 Comments

I don't quite understand the given function
A(2)/2=1 % correctly and write to the array
A(3)/2= 1.5 % wrong and move on to the next correct number
A(4)/2=2 % correctly and write to the array
A=[1:100];
count = 0 ;
iwant = zeros([],1) ;
for i=1:30
Ax(i)=A(i)/2;
if ~mod(Ax(i),1) % Ax(i) not a fractional number
count = count+1 ;
iwant(count)=Ax(i);
end
end
iwant
You need not to use a loop.
idx = mod(Ax,1) ;
iwant = Ax(idx==0) ;

This question is closed.

Products

Asked:

on 28 Jul 2020

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!