Introducción
En este proyecto, aprenderás a implementar un sistema de gestión de eventos similar a un juego utilizando Python. El objetivo es determinar el número del último artista en un arreglo de asientos circulares basado en una regla de conteo dada.
👀 Vista previa
$ python party.py
Ingrese el valor numérico del período de reporte x:10
El número del último artista es: 108
$ python party.py
Ingrese el valor numérico del período de reporte x:18
El número del último artista es: 254
🎯 Tareas
En este proyecto, aprenderás:
- Cómo crear y administrar un archivo de Python
- Cómo implementar una función para simular el proceso de conteo
- Cómo determinar el número del último artista basado en los requisitos dados
🏆 Logros
Después de completar este proyecto, podrás:
- Comprender la lógica detrás del arreglo de asientos circulares y el proceso de conteo
- Implementar una función de Python para resolver el problema
- Ejecutar el programa y obtener la salida deseada
- Aplicar tus habilidades para resolver problemas en escenarios del mundo real
Crea el archivo party.py
En este paso, crearás el archivo party.py en el directorio /home/labex/project. Sigue los pasos siguientes para completar este paso:
- Abre tu editor de texto o IDE preferido.
- Crea un nuevo archivo llamado
party.pyen el directorio/home/labex/project.
cd /home/labex/project
touch party.py
- Agrega el siguiente código al archivo
party.py:
## n representa el número total de personas, x representa el número para actuar
def game(n, x):
'''
Completa el código
'''
if __name__ == '__main__':
x = int(input('Ingrese el valor numérico del período de reporte x:'))
game(263, x)
Este código establece la estructura básica para el archivo party.py, incluyendo la función game() y el bloque de ejecución principal.
Implementa la función game()
En este paso, implementarás la función game() para determinar el número del último artista. Sigue los pasos siguientes para completar este paso:
Abre el archivo
party.pyen tu editor de código.En la función
game(), inicializa la listaseatspara representar los números de los asientos de todas las personas. La listaseatsdebe contener los números del 1 al 263.Inicializa la variable
indexpara llevar un registro de la posición actual en el conteo.Simula el proceso de conteo hasta que solo quede una persona. Para hacer esto, utiliza un bucle que repita los siguientes pasos:
- Calcula la siguiente posición para contar sumando
x - 1a la posición actualindexy tomando el módulo de la longitud de la listaseats. - Elimina a la persona en la posición calculada
indexde la listaseats.
- Calcula la siguiente posición para contar sumando
La persona restante en la lista
seatses el último artista. Imprime el número del último artista.
Aquí está la función game() completada:
def game(n, x):
## Inicializa la lista de asientos, que representa los números de asientos de todas las personas
seats = list(range(1, n + 1))
## Inicializa el índice para el conteo, que representa la posición actual en el conteo
index = 0
## Simula el conteo hasta que solo quede una persona
while len(seats) > 1:
## Calcula la siguiente posición para contar
index = (index + x - 1) % len(seats)
## Elimina a la persona que se está contando
seats.pop(index)
## La persona restante es el último artista
last_performer = seats[0]
print("El número del último artista es:", last_performer)
Ejecuta el programa
En este paso, ejecutarás el programa party.py y proporcionarás el valor de x para ver el número del último artista.
- Abre una terminal o línea de comandos.
- Navega hasta el directorio
/home/labex/project. - Ejecuta el programa
party.pyusando el siguiente comando:
python party.py
- Cuando se te solicite, ingresa el valor numérico del período de reporte
x. Por ejemplo, puedes probarx = 10ox = 18. - El programa mostrará el número del último artista.
Aquí hay un ejemplo de la salida del programa:
$ python party.py
Ingrese el valor numérico del período de reporte x:10
El número del último artista es: 108
$ python party.py
Ingrese el valor numérico del período de reporte x:18
El número del último artista es: 254
¡Felicitaciones! Has completado el proyecto implementando la función game() y ejecutando el programa party.py.
Resumen
¡Felicitaciones! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.



