Ocena użytkownikóww: ***** / 1
Nadesłany przez Alek, 11 lutego 2017 17:04
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.stos.rb:
# Prosta implementacja stosu w języku Ruby
# Dla algorytm.org
# Wykonał: A.Kozłowski
# Klasa stosu
class Stack
# Konstruktor tworzący pustą tablicę podczas inicjalizowania obiektu
def initialize
@stack = Array.new
end
# Metoda push, dodaje nowy element na początku tablicy
def push (new_stack_el)
@stack.unshift(new_stack_el)
end
# Metoda pull, usuwa pierwszy elemenet tablicy
def pull
@stack.shift
end
# Metoda show, odpowadia za wyświetlanie zawartości tablicy
def show
puts ""
puts "<wierzchołek stosu>"
puts @stack
puts "<dno stosu>"
puts ""
end
end
stos = Stack.new
# Część odpowiedzialna za interakcję z użytkownikiem
while (true)
stos.show
puts "Akcje:"
puts "1.Push"
puts "2.Pull"
puts "3.Exit"
print "Wybierz: "
choice = gets.to_i
case choice
when 1
print "Warotść: "
value = gets.to_i
stos.push(value)
puts "\e[H\e[2J" # Czyści ekran konsoli (system("clear"))
when 2
stos.pull
when 3
break
end
puts "\e[H\e[2J"
end