Advertisement
jtentor

DemoStack1 - CS - Stack.cs

May 9th, 2020
1,234
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace DemoStack1
  8. {
  9.     class Stack
  10.     {
  11.         private int dimension;
  12.         private char[] datos;
  13.         private int cuenta;
  14.  
  15.         public Stack(int dimension = 10)
  16.         {
  17.             this.dimension = dimension;
  18.             this.datos = new char[dimension];
  19.             this.cuenta = 0;
  20.         }
  21.  
  22.         public void Push(char elemento)
  23.         {
  24.             if (this.cuenta >= this.dimension)
  25.             {
  26.                 throw new Exception("Error la Pila está llena ...");
  27.             }
  28.             this.datos[this.cuenta] = elemento;
  29.             ++this.cuenta;
  30.         }
  31.  
  32.         public char Pop()
  33.         {
  34.             if (this.isEmpty)
  35.             {
  36.                 throw new Exception("Error la Pila está vacía ...");
  37.             }
  38.             --this.cuenta;
  39.             return this.datos[this.cuenta];
  40.         }
  41.  
  42.         public char Peek()
  43.         {
  44.             if (this.isEmpty)
  45.             {
  46.                 throw new Exception("La pila está vacía ...");
  47.             }
  48.             return this.datos[this.cuenta - 1];
  49.         }
  50.  
  51.         public bool isEmpty
  52.         {
  53.             get { return this.cuenta <= 0; }
  54.         }
  55.         public int Count {
  56.             get { return this.cuenta;  }
  57.         }
  58.     }
  59. }
Advertisement
RAW Paste Data Copied
Advertisement