why does this code stops at a=1 or b=1? i expect it to stop at a=1 and b=1
a=input('');
b=input('');
x=2;
c=1;
while (a~=1 && b~=1)
while (mod(a,x)==0) || (mod(b,x)==0)
c=c*x;
if (mod(a,x)==0)&&(mod(b,x)==0)
a=a/x;
b=b/x;
elseif mod(a,x)==0
a=a/x;
elseif mod(b,x)==0
b=b/x;
end
end
x=x+1;
end
disp(c)

Antworten (1)

Jonas
Jonas am 5 Aug. 2021
Bearbeitet: Jonas am 5 Aug. 2021

0 Stimmen

it should run if

   ~(a==1 && b==1)

which would equal

a~=1 || b~=1

Kategorien

Mehr zu MATLAB finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2020b

Bearbeitet:

am 5 Aug. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by