Search

조건문4_문제01_모두의마블

대분류
STEP03 조건문/일차반복문
소분류
조건문4_문제

영상

문제

''' [문제] 철수는 지금 모두의 마블 게임을 하고 있다. 게임은 0 ~ 20까지 이동할 수 있는 거리가 있다. 지금 철수의 차례이고 , 현재의 위치는 시작점으로부터 9만큼 이동했다. 1 ~ 6의 눈금이 있는 주사위 2개를 던진다. 주사위 숫자의 합만큼 이동한다. 아래 조건을 모두 만족하는 철수의 위치를 출력하시오. [조건] [1] 두 주사위 숫자가 서로 다를 경우는 현재위치에서 주사위 숫자의 합만큼 이동한다. 예) 3, 5 ==> 8 만큼 이동한다. [2] 두 주사위 숫자가 같은 경우 보너스 이동 거리 6이 추가된다. 예) 2, 2 ==> 4 + 6 만큼 이동한다. [3] 14, 15, 16 번의 위치에 함정이 있다. 함정에 걸리면 다시 주사위 2개를 던지고 그 합이 6이하이면 [페널티] 처음 위치(0)로 이동한다. 그 합이 7이상이면 [페널티 없음] 함정을 탈출하여 다음 칸(17)으로 이동한다. [4] 20 이상의 값이 나오면 "승리"를 출력한다. '''
Python
복사

해설

''' [문제] 철수는 지금 모두의 마블 게임을 하고 있다. 게임은 0 ~ 20까지 이동할 수 있는 거리가 있다. 지금 철수의 차례이고, 현재의 위치는 시작점으로부터 9만큼 이동했다. 1 ~ 6의 눈금이 있는 주사위 2개를 던진다. 주사위 숫자의 합만큼 이동한다. 아래 조건을 모두 만족하는 철수의 위치를 출력하시오. [조건] [1] 두 주사위 숫자가 서로 다를 경우는 현재위치에서 주사위 숫자의 합만큼 이동한다. 예) 3, 5 ==> 8 만큼 이동한다. [2] 두 주사위 숫자가 같은 경우 보너스 이동 거리 6이 추가된다. 예) 2, 2 ==> 4 + 6 만큼 이동한다. [3] 14, 15, 16 번의 위치에 함정이 있다. 함정에 걸리면 다시 주사위 2개를 던지고 그 합이 6이하이면 [페널티] 처음 위치(0)로 이동한다. 그 합이 7이상이면 [페널티 없음] 함정을 탈출하여 다음 칸(17)으로 이동한다. [4] 20 이상의 값이 나오면 "승리"를 출력한다. ''' import random 철수_위치 = 9 print(철수_위치) 주사위1 = random.randint(1, 6) 주사위2 = random.randint(1, 6) print(주사위1, 주사위2) 철수_위치 = 철수_위치 + 주사위1 + 주사위2 if 주사위1 == 주사위2: 철수_위치 = 철수_위치 + 6 print(철수_위치) if 철수_위치 == 14 or 철수_위치 == 15 or 철수_위치 == 16: print("함정에 빠짐!") 주사위1 = random.randint(1, 6) 주사위2 = random.randint(1, 6) print(주사위1, 주사위2)= 주사위1 + 주사위2 if<= 6: print("패널티 부여") 철수_위치 = 0 if>= 7: print("패널티 없음") 철수_위치 = 17 print(철수_위치) if 철수_위치 >= 20: print("승리")
Python
복사