Re: 23.7 심사문제 질문입니다.
, 도장_ 관리자님이 작성시각적으로 디버깅하기 위해 Thonny를 설치하세요.
여기에 코드를 붙여 넣습니다.
Ctrl + F5로 디버그로 시작하고, F7 키를 눌러서 한 단계씩 실행합니다.
메뉴에서는 View > Variabls를 선택하면 변수 값의 목록을 오른쪽에 볼 수 있습니다.
한 단계씩 실행하고 하단의 Shell에서 첫 번째 input에 대해서 3 3을 입력합니다.
F7로 한 단계씩 계속 실행해서 두 번째 input에 대해서 ...을 입력합니다.
F7로 계속 실행하면 마지막 조건에서는 가장 안쪽의 조건에서 4개의 조건문이 모두 False로 평가된 상태까지 실행할 수 있습니다.
elif에서는 0 == '*'로 평가되는 상태도 지켜볼 수 있습니다.
F7로 계속 진행해 보면 첫 번째 ...이 끝나고 다음 줄로 상태가 넘어갑니다.
오른쪽 Variables 창을 보면 y는 1입니다. 이제 다음 줄에 대해서 처리하는 것이죠.
그러나 지금까지의 코드에서 입력은
3 3
...
이게 전부입니다. 그 다음 데이터가 없습니다.
3x3 크기라면
...
.?.
..*
? 위치에서 주변에 지뢰가 있는지 계산하는 것입니다.
따라서 먼저 모든 입력을 받아야 합니다.
첫 번째 줄만 입력 받아서는 주변에 지뢰가 있는지 판단하는 게 불가능합니다.
로직의 첫 번째 가정이 틀린 것을 알 수 있습니다.
Thonny를 사용하세요!