Given main.py, complete the Stack class in Stack.py by writing the push() and pop() methods. The stack uses an array of size 5 to store elements. The command Push followed by a positive number pushes the number onto the stack. The command Pop pops the top element from the stack. Entering -1 exits the program. Output "Can't push, stack is full" when push() is called on a full stack. Output "Can't pop, stack is empty" when pop() is called on an empty stack. Ex. If the input is: Push 1 Push 2 Push 3 Push 4 Push 5 Pop -1 Code given main.py(read-only) from Stack import Stack if __name__ == "__main__":          stack = Stack(5)          input_line = input()     while input_line != '-1':         split_input = input_line.split(' ')         command = split_input[0]                  if command == 'Push':             number_to_push = int(split_input[1])             stack.push(number_to_push)             print('Stack contents (top to bottom):')             stack.print_stack()         elif command == "Pop":             stack.pop()             print('Stack contents (top to bottom):')             stack.print_stack()                  input_line = input()   Stack.py (needs edit) class Stack:     def __init__(self, allocation_size):         self.array = [None] * allocation_size         self.top_index = -1     # TODO: Write a method to push a value into the stack     # TODO: Write a method to pop the top value from the stack     def print_stack(self):         i = self.top_index         while i >= 0:             print(self.array[i])             i = i - 1         print()

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Given main.py, complete the Stack class in Stack.py by writing the push() and pop() methods. The stack uses an array of size 5 to store elements. The command Push followed by a positive number pushes the number onto the stack. The command Pop pops the top element from the stack. Entering -1 exits the program.

Output "Can't push, stack is full" when push() is called on a full stack. Output "Can't pop, stack is empty" when pop() is called on an empty stack.

Ex. If the input is:

Push 1

Push 2

Push 3

Push 4

Push 5

Pop -1

Code given

main.py(read-only)

from Stack import Stack

if __name__ == "__main__":
    
    stack = Stack(5)
    
    input_line = input()
    while input_line != '-1':
        split_input = input_line.split(' ')
        command = split_input[0]
        
        if command == 'Push':
            number_to_push = int(split_input[1])
            stack.push(number_to_push)
            print('Stack contents (top to bottom):')
            stack.print_stack()
        elif command == "Pop":
            stack.pop()
            print('Stack contents (top to bottom):')
            stack.print_stack()
        
        input_line = input()

 

Stack.py (needs edit)

class Stack:
    def __init__(self, allocation_size):
        self.array = [None] * allocation_size
        self.top_index = -1

    # TODO: Write a method to push a value into the stack

    # TODO: Write a method to pop the top value from the stack

    def print_stack(self):
        i = self.top_index
        while i >= 0:
            print(self.array[i])
            i = i - 1
        print()

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
Stack
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education