Clear Filters
Clear Filters

My program won't stop running and I cannot figure out why.

2 views (last 30 days)
frac=0.525;
b=7;
A=[frac*b];
F=[floor(frac*b)];
frac=A(1)-F(1);
while frac-floor(frac)~=0
A=horzcat(A,frac*b);
for i=1:length(A)-1
if abs(A(i)-A(length(A)))<10^(-5)
sprintf('This is a repeating fraction in base %d',b)
break
end
end
F=horzcat(F,floor(frac*b));
frac=A(length(A))-F(length(F));
end
A
F

Answers (1)

Walter Roberson
Walter Roberson on 27 Feb 2018
break only breaks one level. It would leave the for but not the while at the same time.

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!