Lösungsproblem der kreisförmigen Sitzordnung

PythonBeginner
Jetzt üben

Einführung

In diesem Projekt lernst du, wie du ein spielähnliches Ereignisverwaltungssystem mit Python implementierst. Ziel ist es, die Nummer des letzten Darstellers in einer kreisrunde Sitzordnung gemäß einer gegebenen Zählregel zu bestimmen.

👀 Vorschau

$ python party.py
Bitte geben Sie den numerischen Wert der Meldepause x ein:10
Die Nummer des letzten Darstellers ist: 108
$ python party.py
Bitte geben Sie den numerischen Wert der Meldepause x ein:18
Die Nummer des letzten Darstellers ist: 254

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du eine Python-Datei erstellen und verwalten
  • Wie du eine Funktion implementierst, um den Zählprozess zu simulieren
  • Wie du die Nummer des letzten Darstellers gemäß den gegebenen Anforderungen bestimmst

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Den Logik hinter der kreisrunden Sitzordnung und dem Zählprozess zu verstehen
  • Eine Python-Funktion implementieren, um das Problem zu lösen
  • Das Programm ausführen und die gewünschte Ausgabe erhalten
  • Deine Problemlösefähigkeiten auf reale Szenarien anzuwenden

Erstellen Sie die Datei party.py

In diesem Schritt erstellen Sie die Datei party.py im Verzeichnis /home/labex/project. Folgen Sie den untenstehenden Schritten, um diesen Schritt abzuschließen:

  1. Öffnen Sie Ihren bevorzugten Texteditor oder Ihre bevorzugte IDE.
  2. Erstellen Sie in dem Verzeichnis /home/labex/project eine neue Datei mit dem Namen party.py.
cd /home/labex/project
touch party.py
  1. Fügen Sie den folgenden Code zur Datei party.py hinzu:
## n stellt die Gesamtzahl der Personen dar, x stellt die Zahl für die Darbietung dar
def game(n, x):
    '''
    Vollständigen Sie den Code
    '''

if __name__ == '__main__':
    x = int(input('Bitte geben Sie den numerischen Wert der Meldepause x ein:'))
    game(263, x)

Dieser Code legt die grundlegende Struktur für die Datei party.py fest, einschließlich der Funktion game() und des Hauptausführungsblocks.

✨ Lösung prüfen und üben

Implementieren Sie die Funktion game()

In diesem Schritt implementierst du die Funktion game(), um die Nummer des letzten Darstellers zu bestimmen. Folgen Sie den untenstehenden Schritten, um diesen Schritt abzuschließen:

  1. Öffnen Sie die Datei party.py in Ihrem Code-Editor.

  2. In der Funktion game() initialisiere die Liste seats, um die Sitznummern aller Personen darzustellen. Die Liste seats sollte die Zahlen von 1 bis 263 enthalten.

  3. Initialisiere die Variable index, um die aktuelle Position beim Zählen zu verfolgen.

  4. Simuliere den Zählprozess, bis nur noch eine Person übrig ist. Dazu verwende eine Schleife, die die folgenden Schritte wiederholt:

    • Berechne die nächste Position zum Zählen, indem du x - 1 zur aktuellen index addierst und den Modulo der Länge der Liste seats nimmst.
    • Entferne die Person an der berechneten index aus der Liste seats.
  5. Die verbleibende Person in der Liste seats ist der letzte Darsteller. Drucke die Nummer des letzten Darstellers.

Hier ist die abgeschlossene Funktion game():

def game(n, x):
    ## Initialisiere die Sitzliste, die die Sitznummern aller Personen darstellt
    seats = list(range(1, n + 1))
    ## Initialisiere den Index zum Zählen, der die aktuelle Position beim Zählen darstellt
    index = 0

    ## Simuliere das Zählen, bis nur noch eine Person übrig ist
    while len(seats) > 1:
        ## Berechne die nächste Position zum Zählen
        index = (index + x - 1) % len(seats)
        ## Entferne die Person, die gezählt wird
        seats.pop(index)

    ## Die verbleibende Person ist der letzte Darsteller
    last_performer = seats[0]
    print("Die Nummer des letzten Darstellers ist:", last_performer)
✨ Lösung prüfen und üben

Führen Sie das Programm aus

In diesem Schritt führen Sie das Programm party.py aus und geben den Wert von x ein, um die Nummer des letzten Darstellers zu sehen.

  1. Öffnen Sie ein Terminal oder eine Befehlszeile.
  2. Navigieren Sie zum Verzeichnis /home/labex/project.
  3. Führen Sie das Programm party.py mit dem folgenden Befehl aus:
python party.py
  1. Wenn Sie dazu aufgefordert werden, geben Sie den numerischen Wert der Meldepause x ein. Beispielsweise können Sie versuchen, x = 10 oder x = 18.
  2. Das Programm wird die Nummer des letzten Darstellers ausgeben.

Hier ist ein Beispiel für die Programmausgabe:

$ python party.py
Bitte geben Sie den numerischen Wert der Meldepause x ein:10
Die Nummer des letzten Darstellers ist: 108
$ python party.py
Bitte geben Sie den numerischen Wert der Meldepause x ein:18
Die Nummer des letzten Darstellers ist: 254

Herzlichen Glückwunsch! Sie haben das Projekt abgeschlossen, indem Sie die Funktion game() implementiert und das Programm party.py ausgeführt haben.

✨ Lösung prüfen und üben

Zusammenfassung

Herzlichen Glückwunsch! Sie haben dieses Projekt abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.