내가 처음 만든 숫자 야구

2025. 3. 6. 10:16·python/연습장

교수님이 설명해주신 프로그램의 조건을 잘못 이해한듯? (게임 고유의 규칙 말고)

나는 컴퓨터랑 대결 하라길래, 정답 숫자가 있는 상태에서

내가 뽑고, 결과 나오고, 그 다음에 컴퓨터가 뽑고, 결과 나오고 해서

컴퓨터랑 대결해서 먼저 이기는 게임 만들라는 것으로 이해함

 

그게 아니라

컴퓨터가 숫자를 뽑으면

그걸 추측하는 게임을 만들라는거였음 ㅋㅋ 


# 랜덤하게 3자리 숫자가 정해진다.
# 내가 입력한다 > 결과가 나온다 *함수를 써볼까?
# 컴퓨터가 고른다 > 결과가 나온다
# 1턴 = 유저 1회 + 컴퓨터 1회

# 저장이 필요한 데이터들
score = [] #승패
trun = 0 # 이거 필요 없을수도있음 (일단 설정)

print("[menu]\n1.play\n2.score\n3.stop") # 메뉴고르기
user_input = input("메뉴를 고르시오: ")

while True:
    if user_input == '1': #유저가 1번 play를 고른 경우
        print("게임을 시작합니다.")
        print("[menu]\n1.high(9회)\n2.normal(12회)\n3.low(15회)")  # 난이도 고르기
        level = input("난이도를 고르시오: ")

        if level == '1':
            print("high level(9회)을 시작합니다.")

        if level == '2':
            print("normal level(12회)을 시작합니다.")

        if level == '3':
            print("low level(15회)을 시작합니다.")


        # 위 문구를 프린트하고 다음 코드 진행
        switch = True
        while switch: # 플레이어가 3개의 숫자를 고른다.(중복x, 1~9)
            a = input("1~9 사이, 중복x \n첫 번째 숫자를 고르세요.: ")
            a = int(a)
            if 1 <= a <= 9: # 1~9 사이 숫자
                switch = False # 골랐으니 해당 반복문 종료
            else: # 범위를 벗어나면 다시 고르게 하기
                print("1~9 사이의 숫자로 다시 골라주세요.")

        # 2번째 숫자
        switch = True
        while switch:
            b = input("1~9 사이, 중복x \n두 번째 숫자를 고르세요.: ")
            b = int(b)
            if 1 <= b <= 9:
                if b != a: # 두번째 숫자는 a랑 중복되면 안됨
                    switch = False
                else:
                    print("중복된 숫자입니다. 다시 골라주세요.")
            else:
                print("1~9 사이의 숫자로 다시 골라주세요.")

        switch = True
        while switch:
            c = input("1~9 사이, 중복x \n세 번째 숫자를 고르세요.: ")
            c = int(c)
            if 1 <= c <= 9:
                if c != a and c != b:  # c를 a로 고를수도 있고, b도 고를 수 있으니까 and 사용
                    switch = False
                else:
                    print("중복된 숫자입니다. 다시 골라주세요.")
            else:
                print("1~9 사이의 숫자로 다시 골라주세요.")

        user_pic_list = [a, b, c]
        print(f"사용자가 선택한 번호:{user_pic_list}")

        # 컴퓨터 픽
        # 컴퓨터도 랜덤하게 3자리 숫자를 고른다. (중복x, 1~9)

        import random

        com_pic = []

        for i in range(1, 10):
            com_pic.append(i)

        import random

        random.shuffle(com_pic)
        computer = com_pic[:3]
        print(computer)  # 셔플은 차순으로 안나옴

    if user_input == '2': #유저가 2.score를 고른 경우
        print("전적을 조회합니다.")

    if user_input == '3':
        print("게임을 종료합니다.")
        break

'python > 연습장' 카테고리의 다른 글

중복검사 왜 안되는지 알아내기  (0) 2025.03.06
내가 처음 만든 물고기 게임  (0) 2025.03.06
숫자야구  (0) 2025.03.01
로또 구매 프로그램  (2) 2025.02.27
로또 자동 판매기 (no sample)  (0) 2025.02.26
'python/연습장' 카테고리의 다른 글
  • 중복검사 왜 안되는지 알아내기
  • 내가 처음 만든 물고기 게임
  • 숫자야구
  • 로또 구매 프로그램
joo_coding
joo_coding
2025.02.18~
  • joo_coding
    주코딩일지
    joo_coding
  • 전체
    오늘
    어제
    • 분류 전체보기 (135) N
      • 일지 (19)
      • 계획표 (7)
      • C언어 (35)
        • 연습장 (12)
      • 과제 (2)
      • C++ (3)
      • python (28)
        • 연습장 (11)
      • TCP IP (4)
      • DB (2)
      • ubuntu (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    c언어 #vscode #gcc #윈도우 #c언어윈도우 #gcc윈도우 #vscode윈도우 #c #c++
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
joo_coding
내가 처음 만든 숫자 야구
상단으로

티스토리툴바