본문 바로가기
  • 마침표 보다 쉼표를 나타내자
국비교육 [完]/빅데이터과정

12월 24일 - (32일차)

by Y코더 2022. 12. 24.
728x90

오늘은 크리스마스 이브이다.

똑같이 토요일 수업 파이썬 이다.

여러가지 개념들을 배우고

야구 게임을 만들고 있는데 어렵게 느껴진다.

익숙치 않아서 그런것같다. 열심히 하자

#숫자 야구 게임

#컴퓨터가 랜덤값 숫자 3개를 가져야한다. 랜덤기능을 불러와준다.
import random

#컴퓨터가 값을 받을 3개의 공간을 생성한다.
num = ["0", "0", "0"]

#순서대로 배열에 값을 1에서 10까지 1개를 뽑는다.
num[0] = int(random.randrange(1, 10, 1))
num[1] = num[0]
num[2] = num[0]

#랜덤값이 중복 되지않게 값을 뽑도록 한다.

#처음 뽑은값이 2번째 값과 같다면 2번째 값을 다시 뽑으세요
while(num[0] == num[1]):
    num[1] = str(random.randrange(1, 10, 1))

#처음 뽑은값이 3번째 값과 같거나 두번째 뽑은 값과 같다면 3번째 값을 다시 뽑으세요
while(num[0] == num[2] or num[1] == num[2]):
    num[2] = str(random.randrange(1, 10, 1))

# #잘뽑히나 확인(주석처리)
print("다 맞추는 숫자 알려드림.")
print(num)

#스트라이크, 볼 갯수, 시도 횟수를 선언한다. 
s = 0
b = 0
try_num = 0

#사용자에게 게임 시작을 알리기
print("-" * 50)
print("숫자야구를 시작하겠습니다.")
print("-" * 50)

#야구게임 시작
while (s < 3):
    s = 0
    b = 0

    #사용자에게 숫자 3개를 입력 받기
    #number = str(input("숫자 3개를 입력하세요: "))

    print("1~9까지 숫자중 3개를 하나씩 입력해주세요.")
    x = 0

    #사용자 입력한값 배열선언
    number = []

    #사용자에게 숫자를 3개 뽑기 위함이다
    while x < 3:
        add_number = int(input("숫자를 입력하세요: "))
        if add_number > 9:
            print("범위를 벗어나는 숫자입니다. 다시 입력하세요.")
            #다시 입력하도록 컨티뉴 시킨다.
            continue
        if add_number in number:
            #사용자가 입력한 번호가 배열안에 있는지 검색한다
            print("중복되는 숫자입니다. 다시 입력해주세요.")
        else:
            number.append(add_number)
            #값이 맞으니 횟수를 증가 시킨다.
            x += 1

    for i in range(0, 3):
        for j in range(0, 3):
            if(number[i] == int(num[j]) and i == j):
                s += 1
            elif(number[i] == int(num[j]) and i != j):
                b += 1
    print("*" * 50)
    try_num += 1
    print("스트라이크: [",s,"]개 볼[",b,"]개"" ""[",try_num,"]번째 시도")

print("-" * 50)
print("오 잘하시군요~")
print("[",try_num,"]번 만에 모두 맞췄습니다아~")
728x90

'국비교육 [完] > 빅데이터과정' 카테고리의 다른 글

12월 27일 - (34일차)  (0) 2022.12.27
12월 26일 - (33일차)  (0) 2022.12.26
12월 23일 - (31일차)  (0) 2022.12.23
12월 22일 - (30일차)  (0) 2022.12.22
12월 21일 - (29일차)  (0) 2022.12.21