yooj16   1년 전

혹시 어떤 부분에서 틀렸는지 알 수 있을까요?

dong5995   1년 전

음.. b가 a의 배수라고 하면 b%a 는 항상 0이니까 while을 무한히 돌게 됩니다.

a가 b의 배수인 경우도 마찬가지구요.

b와 a가 약수 배수 관계가 아니면 while문을 한번도 돌지 않기 때문에 0이 출력됩니다.

yooj16   1년 전

혹시 while 문에서

a%b!=0

b%a!=0

으로 바꾸어도 안되는 건가요?

시간 초과라고 나옵니다.

dong5995   1년 전

while 문 보시면 c랑 d만 변하니까 a와 b를 조건으로 걸면 안됩니다. a와 b는 변하지 않으므로 조건이 항상 참이거나 거짓입니다. 그러면 while문은 영원히 돌거나(조건이 참일 때) 한번도 돌지 않거나(조건이 거짓일 때) 할 수밖에 없습니다. 영원히 while문이 돌게 되면 시간초과가 뜨겠죠.

dong5995   1년 전

조건을 각각 c와 d가 포함된 식으로 바꿔보세요.

댓글을 작성하려면 로그인해야 합니다.