I am making a simple program to calculate the number of times a decimal number has to be multiplied (by positive integers) so that the decimal part (mod1) will = 0.
Example of the code:
%Decimal
ro=0.5854;
n=1;
while mod(ro*n,1)~=0
n=n+1;
end
n
In this case the answer is 5000.
I want to be able to change the last digit of the decimal point. But I am having a problem when I make a small change in the program. I get an infinite loop. The changed program is shown below:
%Decimal
ro=0.585+0.0004;
n=1;
while mod(ro*n,1)~=0
n=n+1;
end
n
I can't understand why I get an infinite loop with this small change - the value of ro changed acordingly but I get an infinite "while" loop. Please explain.

 Akzeptierte Antwort

Stephen23
Stephen23 am 30 Jul. 2022
Verschoben: Walter Roberson am 22 Jan. 2023

0 Stimmen

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by