코딩도장

방탈출 게임 만들기 (간단)

방탈출 게임을 만들려면 기본적인 맵을 구상하는게 좋습니다.

조건 1. 10줄 출력하게 합니다.

방탈출이기 때문에 힌트는 하나라도 있어야 합니다.

그다음에는 비밀번호를 만듭니다.

조건 1. 비밀번호는 3자리로 한다. 2. 비밀번호를 1자리씩 입력하게 한다. (1개 입력하고 엔터 누르는 식) 3. 비밀번호가 틀리면 처음부터 다시 입력하게 한다. 4. 비밀번호가 맞으면 성공 메시지를 출력한다.

2023年04月22日 18:06

고양이 푸딩

(追記) (追記ここまで)
댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.

10개의 풀이가 있습니다.

import random
password = [random.randint(0, 9) for _ in range(3)]
idx = 0
while True:
 if idx == 3:
 print('3개의 비번을 맞추었습니다.!!')
 break
 num = int(input('1자리 정수을 입력하세요(0, 1, 2, . . , 9): '))
 if num != password[idx]:
 if num > password[idx]:
 print('작은 수를 입력하세요')
 else:
 print('더 큰 수를 입력하세요.')
 print('처음 부터 다시 숫자를 입력하세요.')
 idx = 0
 else:
 idx += 1
댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
import random
def make_num():
 return [random.randrange(0, 9) for i in range(3)]
secret_num = make_num()
t_num = 1
while True:
 if t_num == 4:
 print("성공\n게임종료")
 break
 input_num = input("{}자리 비밀번호 입력 : ".format(t_num))
 if str(secret_num[t_num-1]) == input_num:
 t_num += 1
 else:
 t_num = 1

비밀번호부분만 짜봤습니다.

[조건 1. 10줄 출력하게 합니다] 이게 무슨뜻인지는 잘 이해가 안되네요ᅲ

댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
import random
number = random.randrange(100, 1000)
number_first = str(number)[0]
number_second = str(number)[1]
done = False
while not done:
 print('첫번째 수와 두번째 수의 합은 {0}'.format(int(number_first) + int(number_second)))
 answer = int(input('답을 입력해주세요: '))
 if answer == number:
 print('성공!')
 done = True
 else:
 print('틀림...')

2023年05月07日 12:34

pizza

댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.

힌트:비밀번호 는 3 자릿수 입니다. 첫 번째 숫자: 넓이가 40cm2 이고 높이가 10cm 일때 밑변의 길이 두 번째 숫자: 23 x -33 + 217 세 번째 숫자: 169.9 - 정사각형의 한 각도 ÷ 10 - 0.99){.python} a = int(input()) if a == 4: pass else: print("처음부터 다시 입력 하세요") continue b = int(input()) if b == 1: pass else: print("처음부터 다시 입력 하세요") continue c = int(input()) if c == 7: pass else: print("처음부터 다시 입력 하세요") continue

2023年08月16日 11:02

hehe

댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
import random
first = random.randint(0, 9)
second = random.randint(0, 9)
third = random.randint(0, 9)
password = [first, second, third]
n = 1
while True:
 request = int(input(f'{n}단계 암호를 입력: '))
 if request == password[n-1]:
 n = n + 1
 if n == 4:
 break
 else:
 print(f'다시 시도하세요. (힌트: 암호와의 절댓값 차이는 {abs(request - password[n-1])})')
 n = 1
print('성공!')

2023年09月30日 04:24

천성

댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
import random
ans = random.randint(0,999)
while True:
 a=input("1st num: ")
 b=input("2nd num: ")
 c=input("3rd num: ")
 inNum = int(a+b+c)
 print(inNum)
 diff = ans -inNum
 if diff >0 :
 print ("guess higher")
 elif diff<0:
 print ("guess lower")
 else:
 print("good") 
 break
댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
code1 = 1
code2 = 2
code3 = 3
print("비밀번호는 연속된 세 자리 수 입니다.") #힌트
while True:
 y_code = int(input('첫 번째 비밀번호를 입력하세요 :')) 
 if y_code != code1:
 continue
 your_code = int(input('두번째 비밀번호를 입력하세요 :'))
 if your_code != code2:
 continue
 your_code = int(input('세번째 비밀번호를 입력하세요 :'))
 if your_code != code3:
 continue
print('clear!')
댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
import random
passward = random.randint(100, 999)
input_int = []
print_list = ['첫', '두', '세']
for i in print_list:
 num = int(input(f'{i}번째 자리수를 입력해주세요.'))
 input_int.append(num)
result = int(''.join(map(str, input_int)))
if result == passward:
 print('성공')
else:
 print('실패')
 print(passward)

2024年06月18日 20:51

조건우

댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
import random
a=[random.randrange(0,9) for _ in range(3)]
b=""
for i in a:
 b=b+str(i)
passkey=1
n=1
while passkey <= 3:
 key=int(input("비밀번호를 입력하시오(0-9):"))
 if key==a[0]:
 print(passkey,"번째 키",key,"를 맞추었습니다")
 passkey+=1
 a.pop(0)
 n+=1
 continue
 if key<a[0]:
 print("비밀번호 보다 작습니다")
 if key>a[0]:
 print("비밀번호 보다 큽니다")
 n+=1
print("비밀번호",b,"를 ",n,"회 시도 후 찾았습니다")

2024年07月20日 21:42

Dr.Choi

댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.
import random
def genPwd() -> list[int]:
 return [random.randrange(100, 1000) for _ in range(10)]
def checkNum(numPosition: int, checkNum, pwd: int) -> bool:
 return checkNum == str(pwd)[numPosition-1]
if __name__ == '__main__':
 print('start escape room')
 pwds = genPwd()
 print(pwds)
 for i, pwd in enumerate(pwds):
 roomIdx = i + 1
 print(f'{roomIdx}번째 방 패스워드 맞추기를 시작합니다.')
 sHint = random.randrange(100, pwd)
 eHint = random.randrange(pwd, 1000)
 print(f'패스워드 힌트는 {sHint} ~ {eHint} 사이의 3자리 숫자입니다.')
 isPass = False
 positionIdx = 1
 while not isPass:
 num = input(f'{positionIdx}번째 자리 숫자를 입력하세요.(0~9)')
 if checkNum(positionIdx, num, pwd):
 positionIdx += 1
 else:
 positionIdx = 1
 print(f'틀렸습니다. 처음부터 다시 입력하세요.')
 if positionIdx == 4:
 isPass = True
 print('정답입니다.')
 break

2025年01月17日 13:57

JI HOON Yang

댓글 작성은 로그인이 필요합니다.
(注記) 상대에게 상처를 주기보다 서로에게 도움이 될 수 있는 댓글을 달아 주세요.

풀이 작성

(注記) 풀이작성 안내
  • 본문에 코드를 삽입할 경우 에디터 우측 상단의 "코드삽입" 버튼을 이용 해 주세요.
  • 마크다운 문법으로 본문을 작성 해 주세요.
  • 풀이를 읽는 사람들을 위하여 풀이에 대한 설명도 부탁드려요. (아이디어나 사용한 알고리즘 또는 참고한 자료등)
  • 작성한 풀이는 다른 사람(빨간띠 이상)에 의해서 내용이 개선될 수 있습니다.
풀이 작성은 로그인이 필요합니다.
목록으로
코딩도장

코딩도장은 프로그래밍 문제풀이를 통해서 코딩 실력을 수련(Practice)하는 곳입니다.


언어별 풀이 현황
전 체 x 14
python x 10
java x 1
기 타 x 2
cpp x 1
코딩도장 © 2014 · 문의 [email protected]
피드백 · 개인정보취급방침 · RSS

AltStyle によって変換されたページ (->オリジナル) /