소개
이 프로젝트에서는 Python 을 사용하여 게임과 유사한 이벤트 관리 시스템을 구현하는 방법을 배우게 됩니다. 목표는 주어진 카운팅 규칙에 따라 원형 좌석 배치에서 마지막 공연자의 번호를 결정하는 것입니다.
👀 미리보기
$ python party.py
Please enter the numerical value of the reporting period x:10
The number of the last performer is: 108
$ python party.py
Please enter the numerical value of the reporting period x:18
The number of the last performer is: 254
🎯 과제
이 프로젝트에서 다음을 배우게 됩니다.
- Python 파일을 생성하고 관리하는 방법
- 카운팅 프로세스를 시뮬레이션하는 함수를 구현하는 방법
- 주어진 요구 사항에 따라 마지막 공연자의 번호를 결정하는 방법
🏆 성과
이 프로젝트를 완료하면 다음을 수행할 수 있습니다.
- 원형 좌석 배치 및 카운팅 프로세스의 논리를 이해합니다.
- 문제를 해결하기 위한 Python 함수를 구현합니다.
- 프로그램을 실행하고 원하는 출력을 얻습니다.
- 문제 해결 능력을 실제 시나리오에 적용합니다.
party.py 파일 생성
이 단계에서는 /home/labex/project 디렉토리에 party.py 파일을 생성합니다. 이 단계를 완료하려면 아래 단계를 따르세요.
- 선호하는 텍스트 편집기 또는 IDE 를 엽니다.
/home/labex/project디렉토리에party.py라는 새 파일을 생성합니다.
cd /home/labex/project
touch party.py
- 다음 코드를
party.py파일에 추가합니다.
## n 은 전체 인원 수를 나타내고, x 는 공연 번호를 나타냅니다.
def game(n, x):
'''
코드를 완성하세요
'''
if __name__ == '__main__':
x = int(input('Please enter the numerical value of the reporting period x:'))
game(263, x)
이 코드는 game() 함수와 메인 실행 블록을 포함하여 party.py 파일의 기본 구조를 설정합니다.
game() 함수 구현
이 단계에서는 마지막 공연자의 번호를 결정하기 위해 game() 함수를 구현합니다. 이 단계를 완료하려면 아래 단계를 따르세요.
코드 편집기에서
party.py파일을 엽니다.game()함수 내에서 모든 사람의 좌석 번호를 나타내기 위해seats리스트를 초기화합니다.seats리스트는 1 부터 263 까지의 숫자를 포함해야 합니다.카운팅의 현재 위치를 추적하기 위해
index변수를 초기화합니다.한 사람만 남을 때까지 카운팅 프로세스를 시뮬레이션합니다. 이를 위해 다음 단계를 반복하는 루프를 사용합니다.
- 현재
index에x - 1을 더하고seats리스트의 길이로 나눈 나머지를 구하여 다음 카운팅 위치를 계산합니다. - 계산된
index에서seats리스트의 사람을 제거합니다.
- 현재
seats리스트에 남아있는 사람이 마지막 공연자입니다. 마지막 공연자의 번호를 출력합니다.
다음은 완성된 game() 함수입니다.
def game(n, x):
## 모든 사람의 좌석 번호를 나타내는 좌석 리스트를 초기화합니다.
seats = list(range(1, n + 1))
## 카운팅의 현재 위치를 나타내는 카운팅을 위한 인덱스를 초기화합니다.
index = 0
## 한 사람만 남을 때까지 카운팅을 시뮬레이션합니다.
while len(seats) > 1:
## 다음 카운팅 위치를 계산합니다.
index = (index + x - 1) % len(seats)
## 카운트된 사람을 제거합니다.
seats.pop(index)
## 남은 사람이 마지막 공연자입니다.
last_performer = seats[0]
print("The number of the last performer is:", last_performer)
프로그램 실행
이 단계에서는 party.py 프로그램을 실행하고 마지막 공연자의 번호를 확인하기 위해 x의 값을 제공합니다.
- 터미널 또는 명령 프롬프트를 엽니다.
/home/labex/project디렉토리로 이동합니다.- 다음 명령을 사용하여
party.py프로그램을 실행합니다.
python party.py
- 메시지가 표시되면 보고 기간
x의 숫자 값을 입력합니다. 예를 들어,x = 10또는x = 18을 시도해 볼 수 있습니다. - 프로그램은 마지막 공연자의 번호를 출력합니다.
다음은 프로그램 출력의 예입니다.
$ python party.py
Please enter the numerical value of the reporting period x:10
The number of the last performer is: 108
$ python party.py
Please enter the numerical value of the reporting period x:18
The number of the last performer is: 254
축하합니다! game() 함수를 구현하고 party.py 프로그램을 실행하여 프로젝트를 완료했습니다.
요약
축하합니다! 이 프로젝트를 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.



