-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
해결됨
영어 단어 맞추기 게임 응용
20.05.04 17:06 작성 조회수 460
1
박사님이 코딩하셨던 영어 단어 맞추기 게임을 응용해서 사용자가 단어를 입력했을 때 만약 그 단어가 틀렸다면 컴퓨터가 맞는 글자와 그 위치를 알려주는 코드를 짜고 싶은데 어떤 함수를 사용해야 할지 모르겠습니다.
예를 들어 사용자가 사과를 affle로 입력했을 때 'a**le' 이런 식으로 표시되게 하려면 직접 사용자 정의 함수를 통해 코드를 짜야 할까요?
답변을 작성해보세요.
0
남박사
지식공유자2020.05.05
간단한 로직처럼 보이지만 입문자 입장에서 막상 코딩을 해보려고 하면 생각할께 참 많은 내용일 수도 있을것 같습니다. 강좌를 좀 더 진행하시면 비슷한 내용이 나오긴 합니다만 일단 간단하게 작성해보았으니 참고해보시기 바랍니다.
# 주어진 단어
word = "apple"
# 사용자에게 입력 받음
inputs = input("입력하세요>")
# 단어가 같다면 다른 처리 불필요
if word == inputs:
print("OK")
else:
# 주어진 단어의 길이와 입력된 단어의 길이를 구합니다.
len_word = len(word)
len_inputs = len(inputs)
# 최종적으로 a**le 이렇게 출력할 문자열 변수
result = ""
# 입력된 글자가 주어진 단어수 보다 모자란 경우를 체크하기 위해 카운팅
count = 0
# 주어진 단어가 더 큰경우(입력된 단어가 모자란 경우)
if len_word >= len_inputs:
for i, v in enumerate(inputs):
if v == word[i]:
result += v
else:
result += "*"
count += 1
# 입력된 단어가 주어진 단어수보다 큰 경우(어떻게 할지 결정)
else:
for i, v in enumerate(word):
if v == inputs[i]:
result += v
else:
result += "*"
count += 1
# 입력된 단어가 모자란 경우 * 처리
for i in range(len_word - count):
result += "*"
print(count, result)
위 코드에서 처럼 사용자가 입력한 값이 주어진 단어보다 길이가 큰 경우와 반대인 경우에 모두 처리를 해야 합니다.
답변 1