목록Python (39)
KEK 개발로그
이번에 만들어 볼 게임은 '베스킨~라빈스~31'게임이다. 이 게임의 규칙은 아래와 같다. [간단설명] 1부터 31까지의 숫자를 플레이어와 컴퓨터가 번갈아 가면서 순서대로 말합니다. 숫자를 말할 때는 1개부터 3개까지의 연속된 숫자를 말할 수 있습니다. 즉, 처음 시작하는 사람이 무조건 1 혹은 1, 2 혹은 1, 2, 3을 말하면서 시작하고, 그 뒷 사람은 앞 사람이 말한 숫자에 이어서 또 1개\~3개의 연속된 숫자를 차례대로 말하는 방식입니다. (앞 사람이 3까지 불렀다면, 뒷 사람은 4 혹은 4, 5 혹은 4, 5, 6을 말해야 합니다.) 그렇게 해서 31을 부르는 사람이 지는 게임입니다. [상세설명] 1. 컴퓨터가 먼저 숫자를 말할지, 플레이어가 먼저 숫자를 말할지는 랜덤으로 정한다. 2. 컴퓨터 ..
앞서 만들었던 업다운게임은 컴퓨터가 임의의 수를 정하고, 플레이어가 그 수를 맞히는 게임이었다. 이번에 만들 업다운게임 인공지능도 규칙은 일반 업다운게임과 비슷하다. 하지만 다른 점은 플레이어가 임의의 수를 정하고, 컴퓨터가 그 수를 맞힌다는 것이다. 그리고 여기서 가장 중요한 점은 컴퓨터가 무작위로 수를 뽑아서 대답하는 것이 아니라 플레이어가 정한 숫자를 최대한 빨리 맞히게끔 설정해 줘야 한다는 것이다. 나는 '이진 탐색(Binary Search)' 방법을 활용해서 컴퓨터가 숫자를 빨리 맞히게끔 했다. *이진 탐색(Binary Search) 이란? -이진 탐색 알고리즘은 정렬되어 있는 리스트에서 탐색 범위를 절반씩 좁혀가며 데이터를 탐색하는 방법이다. -이진 탐색은 배열 내부의 데이터가 정렬되어 있어야..
파이썬 기초 문법을 어느정도 익히고 난 후, 첫번째 실습으로 간단한 파이썬 게임을 만들어봤다. 바로바로.... '업다운게임'!!!! '친구들이랑 놀 때 몇 번 해봤던 게임인데..이걸 파이썬으로 만들어보다니..' 라는 생각에 감회가 새로웠다. 우선 업다운게임이 어떤 게임인지 간단히 살펴보면 아래와 같다. [게임 간단설명] -컴퓨터가 1~100 사이에서 임의의 수를 정하고, 플레이어가 그 수를 맞히는 게임. -플레이어가 입력한 수가 컴퓨터가 정한 수보다 작으면 '업', 크면 '다운'이라는 힌트를 제공. -플레이어에게는 총 5번의 기회가 주어지며 그 안에 맞힐 시에는 '성공', 5번째까지 정답을 맞히지 못할 경우에는 '실패'. 이러한 규칙을 가진 게임을 어떤 순서로 어떤 기능을 활용해서 만들면 좋을지 고민해봤..