Info

This question is closed. Reopen it to edit or answer.

Find out how long after division will be an integer?

1 view (last 30 days)
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)

KSSV
KSSV on 28 Jul 2020
if mod(x,1)==0 then x is an whole number/ integer.
  2 Comments
Lev Mihailov
Lev Mihailov on 29 Jul 2020
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
KSSV
KSSV on 29 Jul 2020
Edited: KSSV on 29 Jul 2020
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) ;

madhan ravi
madhan ravi on 28 Jul 2020
Simple use mod()
doc mod

Products

Community Treasure Hunt

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

Start Hunting!