ComenzarEmpieza gratis

Implementación de una cola para tareas de impresora

En el último vídeo, aprendiste que las colas pueden tener varias aplicaciones, como gestionar las tareas de una impresora.

En este ejercicio, implementarás una clase llamada PrinterTasks(), que representará una cola simplificada para una impresora. Para ello, se te proporcionará la clase Queue() que incluye los siguientes métodos:

  • enqueue(data): añade un elemento a la cola
  • dequeue(): elimina un elemento de la cola
  • has_elements(): comprueba si la cola tiene elementos. Este es el código:
    def has_elements(self):

      return self.head != None

Empezarás programando la clase PrinterTasks() con sus métodos add_document() y print_documents(). Después, simularás la ejecución de un programa que utilice la clase PrinterTasks().

Este ejercicio forma parte del curso

Estructuras de datos y algoritmos en Python

Ver curso

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

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.____.____())
Editar y ejecutar código