Ir al contenido principal

¿Cómo funciona una pila en C#?

__Índice__

¿Qués una pila?

Declaración y métodos

Ejercicio
Imagen relacionada

 ¿Qué es una pila?

Una pila (stack) es una estructura de datos que nos permite almacenar y recuperar datos. Básicamente funciona: El último dato agregado, es el primero en salir.

Resultado de imagen para pilas en programacion 

 __Declaración y métodos__

Para crear una pila, utilizaremos la clase Stack. Una pila nos permitirá introducir un nuevo elemento en la cima ("apilar", en inglés "push") y quitar el elemento que hay en la cima ("desapilar", en inglés "pop").

Para utilizar la clase "Stack" y la mayoría de las que veremos en este tema, necesitamos incluir en nuestro programa una referencia a "System.Collections".

Declaración de un objeto pila:  Stack nombrePila = new Stack();


Para agregar un dato: nombrePila.Push(Dato);

También tenemos otros métodos que podemos utilizar en las pilas:
  • "Peek", que mira el valor que hay en la cima, pero sin extraerlo.
  • "Pop", remueve y retorna el dato que se encuentra al último de la pila (El primero en salir)
  • "Clear", que borra todo el contenido de la pila.
  • "Contains", que indica si un cierto elemento está en la pila.
  • "ToArray", que devuelve toda la pila convertida a un array.
  • También tenemos una propiedad "Count", que nos indica cuántos elementos contiene.

__Ejercicio__

El ejercicio que vamos a realizar es bastante sencillo, le pediremos el usuario que nos ingrese una palabra y cada letra la guardaremos en la pila. Al imprimir el contenido de nuestro stack tendremos invertida la palabra. Vamos a ello

 Declaramos nuestra pila con el nombre myStack;

 Le pedimos al usuario una palabra y esta la guardaremos en un arreglo de tipo char
 Pasamos cada letra a la pila con el método Push()
 Tendremos nuestra variable limite para saber la longitud de la pila
 Y recorremos la pila, mandando a imprimir cada indice.

Listo !! Ahora vamos a probarlo



 

Comentarios

Entradas más populares de este blog

3# Criptografía - Cifrado por sustitución Atbash

__ Indice __ ¿Qué es Atbash? Proceso de cifrado Proceso de descifrar  Código Github ¿Qué es Atbash? Atbash es un método de cifrado para el alfabeto hebreo, por lo tanto entra en la clasificación de           - Cifrado Clásico - se le conoce también como el método espejo, pues consiste en sustituir en la que la primera letra (A) será sustituida por la última (Z), la segunda por la penúltima (B - Y) y así sucesivamente. Proceso de cifrado Vayamos a probarlo, vamos a cifrar nuestra palabra de costumbre RegularWeb: R  =   I E  =  V G  =  T U  =  F L  =  O                  Resultado : IVTFOZIDVY A  =  Z R  =  I W =  D E  =  V B  =  Y Proceso de descifrar  Para descifrar es el mismo procedimiento. R  =   I E  =  V G  =  T U  =  F L  =  O                  Resultado : REGULARWEB A  =  Z R  =  I W =  D E  =  V B  =  Y Código Github   https://github.com/NeoTRAN001/Crypt

2# Criptografía - Polybios

__ Indice __ ¿Qué es Polybios? Proceso de cifrado Proceso de descifrar Código Github __ ¿Qué es Polybios? __ Es un sistema de cifrado en el que se coloca todo el alfabeto en una matriz, y cada letra tiene una posición en la que será convertida.  Es considerado el algoritmo de cifrado más antiguo que se tiene registro •Su nombre se le da por el Historiador griego Polybios • Alrededor del año 150 a. C. __ Proceso de cifrado __ Bien, el proceso de cifrado es bastante fácil, tenemos nuestra matriz bidimensional , si queremos traducir el carácter - ? - nos da como resultado [ 0, 0 ] Y pues, eso es todo... Vayamos a cifrar la palabra Hola H = [4, 9]    o = [1 , 9]    l  = [1, 5]     a = [0, 4]  Resultado: 49191504 __ Proceso de descifrar __  Ahora si queremos el proceso inverso, solamente tenemos, tenemos que mandarle las posiciones y este nos devolverá el carácter [4, 9] = H     [1 , 9] = o    [1, 5] = l    [0

Sockets en C#

__ Índice __ ¿Qué son los sockets en programación? Ejemplo en C# Github __ ¿Qué son los socket en programación? __ Un socket es un método de comunicación entre un programa cliente y un servidor. Entonces podemos decir que los sockets, son el "tunel" de comunicación entre dos aplicaciones. __ Ejemplo en C# __ Servidor  Creamos un nuevo proyecto en consola que será el código del servidor Importamos las librerías necesarias para los sockets Declaramos dos variables, una será la dirección del Server , ya que estamos haciendo todo en nuestra pc la dirección debe de ser la local, localhost o 127.0.0.1 La otra variable será el puerto de conexión, es recomendable seleccionar un puerto alto. Es por eso que las aplicaciones utilizan 8080 . Ahora tenemos que crear un objeto de tipo Socket, que nos pide tres parámetro: 1- Esquema del tipo de diccionario: AddressFamily.InterNetwork dice que utilizará una dirección IP