IniziaInizia gratis

Implementare una coda per le attività della stampante

Nell’ultimo video hai visto che le code possono avere molte applicazioni, ad esempio la gestione delle attività di una stampante.

In questo esercizio implementerai una classe chiamata PrinterTasks(), che rappresenta una coda semplificata per una stampante. Per farlo, avrai a disposizione la classe Queue() che include i seguenti metodi:

  • enqueue(data): aggiunge un elemento alla coda
  • dequeue(): rimuove un elemento dalla coda
  • has_elements(): verifica se la coda contiene elementi. Questo è il codice:
    def has_elements(self):
      return self.head != None

Inizierai a scrivere la classe PrinterTasks() con i suoi metodi add_document() e print_documents(). Dopodiché simulerai l’esecuzione di un programma che usa la classe PrinterTasks().

Questo esercizio fa parte del corso

Strutture dati e algoritmi in Python

Visualizza il corso

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

class PrinterTasks:
  def __init__(self):
    self.queue = Queue()
      
  def add_document(self, document):
    # Add the document to the queue
    self.____.____(document)
      
  def print_documents(self):
    # Iterate over the queue while it has elements
    while self.____.____():
      # Remove the document from the queue
      print("Printing", self.____.____())
Modifica ed esegui il codice