Advertisement
Guest User

Untitled

a guest
Jun 15th, 2019
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. class Pilha:
  2. topo = None
  3.  
  4. class Elemento:
  5. numero: float
  6. proximo = None
  7.  
  8. def empilhar_pilha(pilha, novo_numero):
  9. novo_numero.proximo = pilha.topo
  10. pilha.topo = novo_numero
  11. print(f"Elemento {novo_numero.numero} foi inserido no topo da pilha")
  12.  
  13. def desempilhar_pilha(pilha):
  14. if tamanho_pilha(pilha) == 0:
  15. print("A pilha está vazia")
  16. else:
  17. elemento_excluido = pilha.topo
  18. pilha.topo = pilha.topo.proximo
  19. exclusao_feita = elemento_excluido.numero
  20. del elemento_excluido
  21. print(f"Elemento ({exclusao_feita}) foi excluido do topo da pilha")
  22.  
  23. def tamanho_pilha(pilha):
  24. if (pilha_vazia(pilha) == True):
  25. return 0
  26. else:
  27. contador_pilha = 0
  28. numero_pilha = pilha.topo
  29. while numero_pilha != None:
  30. contador_pilha += 1
  31. numero_pilha = numero_pilha.proximo
  32. return contador_pilha
  33.  
  34. def pilha_vazia(pilha):
  35. situacao_pilha = (pilha.topo == None)
  36. return situacao_pilha
  37.  
  38. def listar_pilha(pilha):
  39. if pilha_vazia(pilha) == 0:
  40. print("A pilha esta vazian")
  41. else:
  42. ver_numero = pilha.topo
  43. while ver_numero != None:
  44. print(ver_numero.numero, end= "--> Topon" if ver_numero == pilha.topo else print())
  45. ver_numero = ver_numero.proximo
  46.  
  47. pilha_pilhosa = Pilha()
  48. opcao = 1
  49. while opcao != 5:
  50. print ("1 - Empilhar")
  51. print ("2 - Desempilhar")
  52. print ("3 - Informar tamanho da pilha")
  53. print ("4 - Listar pilha")
  54. print ("5 - Sair")
  55. opcao = int(input("Informe a opcao: "))
  56. if opcao == 1:
  57. numero_informado = float(input("Digite um número: "))
  58. empilhar_pilha(pilha_pilhosa, numero_informado)
  59. elif opcao == 2:
  60. desempilhar_pilha(pilha_pilhosa)
  61. elif opcao == 3:
  62. print(f"Tamanho da pilha é de {tamanho_pilha(pilha_pilhosa)} elementosn")
  63. elif opcao == 4:
  64. listar_pilha(pilha_pilhosa)
  65. elif opcao == 5:
  66. print("Saindo...n")
  67. else:
  68. print("Opcao invalida, digite uma opcao valida no menun")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement