def get_feedback(guess, answer):
strike = 0
ball = 0
for i in range(3):
if guess[i] == answer[i]:
strike += 1
elif guess[i] in answer:
ball += 1
return strike, ball
# 사용자로부터 답을 입력받음
answer = input("3자리 숫자 답을 입력하세요: ")
while len(answer) != 3 or not answer.isdigit() or len(set(answer)) != 3:
print("잘못된 입력입니다. 중복되지 않는 3자리 숫자를 입력해주세요.")
answer = input("3자리 숫자 답을 입력하세요: ")
while True:
# 사용자로부터 추측값을 입력받음
guess = input("추측값을 입력하세요: ")
if len(guess) != 3 or not guess.isdigit() or len(set(guess)) != 3:
print("잘못된 입력입니다. 중복되지 않는 3자리 숫자를 입력해주세요.")
continue
# 스트라이크와 볼 개수를 계산
strike, ball = get_feedback(guess, answer)
print(f"스트라이크: {strike}, 볼: {ball}")
# 정답을 맞췄다면 반복 종료
if strike == 3:
print("정답을 맞췄습니다!")
break
이렇게 작동이 됩니다.
제가 처음에 3자리 수를 입력하고
또 3자리 수를 입력하면 처음에 입력한 것을 기준으로 스트라이크 볼 판정을 내립니다.
정답을 맞춰나가는 솔버 형식이 아니라
그냥 스트라이크 볼 몇 개인지 판정을 하는 코드입니다.
'일상의 잡다한' 카테고리의 다른 글
숫자야구 솔버 0포함 3자리 (0) | 2024.05.20 |
---|---|
축문을 쓰는데 도움이 되는 코드 작성 (0) | 2024.04.22 |
숫자야구 솔버 3자리 파이썬 0-9 사용 (0) | 2024.03.16 |
숫자야구가 생각나서 (0) | 2024.03.16 |
로스트아크 - 우리 마을 골목 대장 숨은 아이 찾기 (0) | 2024.02.29 |