Karel - 4번
기능 정리
- 오른쪽으로 한 칸 갔을때 count +1 해주기
- 왼쪽으로 올 때 count 값에 반만큼 가기
코드
import stanford.karel.*;
public class MidpointFindingKarel extends SuperKarel {
// You fill in this part
// 몇 칸 이동했는지 알기 위해서 count 변수 설정
int count;
public void run() {
// 0으로 초기화
count = 0;
while(true) {
// 앞이 막혀 있으면 while문 빠져 나오기
if(frontIsBlocked()) {
turnAround();
break;
}
// 막혀 있지 않으면 움직이고 count를 +1 해준다.
move();
count++;
}
// 그리고 지금까지 움직인 거리의 1/2 만큼 움직이면 딱 반을 오게 된다.
for(int i=0; i < count/2 ; i++) {
move();
}
putBeeper();
}
}
느낀점
move를 할 때마다 +1을 해주고 돌아올 때는 그 반만큼 돌아오면 된다. 어렵지않았다.
Author And Source
이 문제에 관하여(Karel - 4번), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@wnsgur9701/Karel-4번저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)