본문 바로가기

Python

[PYTHON]숫자 야구 게임 by ChatGPT

반응형

https://youtu.be/IScgfmB6kGY

 

이번 시간에는 숫자 야구 게임을 만들어 보려고 합니다.

모르시는 분은 위해서 설명 드리면 사용자가 123 이라고 생각했을때, 컴퓨터가 142라고 답변했다면 1은 숫자도 맞고 위치도 맞으면 스트라이크로 판정하고, 2의 경우는 숫자는 맞췄지만, 자리는 맞추지 못 하면 볼이라고 판정하는 것입니다.

 

이렇게 서로의 숫자를 누가 더 빨리 맞추는지 시합하는 것입니다. 초등학교 고학년 정도이상이면 고민하면서 풀어볼 수 있는 게임입니다.

이것을 ChatGPT를 이용해서 PYTHON으로 작성하라고 시키는 것입니다.

일단 제가 원하는 내용을 스크립트로 작성해서 입력했습니다.

결과로  나온 PYTHON CODE를 VS CODE에 복사한 후에 실행해 봤습니다.

  

 

 

 

일단 사용자가 입력할 수 있는 내용과 결과창이 분리되어 있어서 불편해서 추가로 수정해 달라고 했습니다.

심지어 컴퓨터가 생각한 숫자도 사용자가 입력하도록 되어 있었습니다.

안되겠다 싶어서 스크립트를 아래처럼 입력해서 결과를 받았습니다. 

 

우선 입력과 결과창이 같이 보여서 그나마 나은데 결과가 다 안 보이는 상황입니다. 그리고 사용자가 숫자 입력 후 매번 제출을 누르는게 불편해서 , 다시 추가 요청을 했습니다.

우선 제출 대신 엔터를 눌러 진행할 수 있게 되었고, 결과창은 잘리지 않았습니다. 그런데 기존에 입력한 숫자가 남아 있어 매번 지워야 해서 불편했고, 처음에 몇자리인지, 사용자가 입력한 숫자가 무엇인지 사라져서 불편해서 아래처럼 다시 요청했습니다.

 

 

 

우선 기존 입력은 지워지도록 수정되었고, 최초에 입력한 내용도 유지되긴 합니다. 그런데 처음 자리수 입력부터 엔터키를 누르면 다음 입력창으로 이동하면 좋겠다고 생각이 들어 다시 요청합니다.

 

 

이제 입력창에서 숫자 넣고 엔터키면 바로 바로 넘어갑니다. 그런데 컴퓨터의 실력이 형편없이 떨어집니다. 일부러 안 맞추고 내버려 뒀더니 몇십번이 지나도 못 맞춥니다. 그래서 조금 고급진 내용으로 입력합니다. 아래는 요청항목입니다.

 

 

뭔가 개선은 된거 같은데 2번째 입력을 하고 나서 한참 지나도록 뭔가 하고 있습니다. 내부적으로 연산이 많아서 완료가 안 되는 것으로 추정됩니다. 그래서 추가로 제약조건을 추가합니다. 아래는 요청 사항입니다.

컴퓨터가 4번만에 맞추었습니다. 이 정도면 웬만한 초등학교 고학년들도 쉽지 않을거 같습니다.

한가지 아쉬운 점은 전체 창과 비어 있는 공간이 조금 안 맞습니다. 이런 부분이 ChatGPT에게는 어려운거 같습니다. 이 부분은 사람이 손을 댈 수 밖에 없습니다.

먼저 창크기를 조정합니다. 현재는 850X600인데 가로도 좀 줄어야 하고 세로는 더 많이 줄어야 합니다.

720X400으로 조정하니 아래처럼 조정됩니다.

 

이렇게 인공지능을 이용하면 크게 머리쓰지 않고 원하는 결과를 얻을 수 있습니다. 

원하는 내용이 있다면 한번 ChatGPT나 기타 다른 인공지능에게 요청해 보세요.

몇번의 시행착오를 지나면 훌륭한 결과를 내줄겁니다.

최종 소스는 아래와 같습니다. 

Yagu_V0.97.py
0.01MB

 

실행파일은 사이즈가 크지 않아서 올려 드립니다.

Yagu_V0.97.exe
8.83MB

 

실행파일 만드는 방법은 기존과 동일합니다.

PYINSTALLER가 설치되어 있다는 가정하에, Anaconda Powershell Prompt를 띄우고, 소스파일이 있는 경로로 이동한 후에 아래 명령을 사용하시면 됩니다.

pyinstaller -w -F Yagu_V0.97.py

그 결과는 해당 폴더의 하위 dist라는 폴더에 Yagu_V0.97.exe로 생성됩니다.

 

반응형