18.6 정답 코드를 알고 싶습니다.
, 김 재섭님이 작성아래 코드를 입력하면 원하는 결과는 가져 오기는 하는데, continue를 이용한 정답 코드를 알고 싶습니다.
그리고, 아래 코드가 IDLE 에서는 작동 되는데 정답 제출하면 문법 에러가 발생하네요. 뭐가 문제인가요?
start, stop = map(int, input().split())
i = start
while True:
if i % 10 != 3 and 1 <= i <= 200 and 10 <= stop <= 200 and i < stop:
print(i, end=' ')
i += 1
elif i % 10 == 3 and 1 <= i <= 200 and 10 <= stop <= 200 and i < stop:
i += 1
elif i == stop and 1 <= i <= 200 and 10 <= stop <= 200:
print(i, end=' ')
break
else:
break
Re: 18.6 정답 코드를 알고 싶습니다.
, 도장_ 관리자님이 작성해당 심사문제는 빈칸에 들어가는 코드만 제출해야 합니다.
문의한 코드는 입력
30 53
에 대해서 출력
30 31 32 34 35 36 37 38 39 40 41 42 44 45 46 47 48 49 50 51 52 53입니다.
문제가 입력 30 53에 대해 원하는 출력은
30 31 32 34 35 36 37 38 39 40 41 42 44 45 46 47 48 49 50 51 52입니다.
3으로 끝나지 않는 숫자가 출력되어야 합니다. 바꿔 말해 3으로 끝나는 숫자는 출력되지 않아야 하지만, 문의한 코드는 53을 제출하고 있습니다.
따라서 버그가 있는 코드이므로 통과되지 않습니다.
심사문제는 정답이 없습니다. 대신에 누구나 통과할 수 있게 연습문제가 있고, 심사문제에서 해설에 힌트를 제공하고 있습니다.
UNIT 18.5는 3으로 끝나는 숫자만 출력하고, UNIT 18.6은 3으로 끝나는 숫자만 출력하지 않으면 됩니다.
따라서 문의한 것처럼 복잡하게 코드를 작성하지 않아도 UNIT 18.5의 정답 코드와 해설을 잘 이해해서 응용하면 UNIT 18.6의 심사문제로 쉽게 해결할 수 있을 것입니다.