Sunteți pe pagina 1din 3

Clase pila

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ListatipoPilaconForm
{
class Pila
{
class Nodo
{
public int info;
public Nodo sig;
}

private Nodo raiz;

public Pila()
{
raiz = null;
}

public void Insertar(int x)


{

Nodo nuevo;
nuevo = new Nodo();
nuevo.info = x;
if (raiz == null)
{
nuevo.sig = null;
raiz = nuevo;
}
else
{
nuevo.sig = raiz;
raiz = nuevo;
}
}

public string Imprimir()


{
Nodo reco = raiz;
string impri = "";
while (reco != null)
{
MessageBox.Show(reco.info + "-");
reco = reco.sig;
}
return impri;
}
public int Extraer()
{

if (raiz != null)
{
int informacion = raiz.info;
raiz = raiz.sig;
return informacion;
}
else
{
return int.MaxValue;

Se agrego un metodo para comparer si la raiz esta vacia para poder imprimir bb
:´´´´V
}
public bool Vacia()
{
if (raiz == null)
{
return true;
}
else
{
return false;
}
}
}
}

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ListatipoPilaconForm
{
public partial class Form1 : Form
{
Pila pila1 = new Pila();

public Form1()
{
InitializeComponent();
}

private void btnInsertar_Click(object sender, EventArgs e)


{
pila1.Insertar(int.Parse(txtValor.Text));
txtValor.Text = "";
txtValor.Clear(); para borrar bb
txtValor.Focus(); para marcar el puntero en la caja :´v
}

private void btnImprimir_Click(object sender, EventArgs e)


{

String imprimir = "";


while (pila1.Vacia() == false)
{
imprimir = imprimir + pila1.Extraer "--";
}
lstBoxImp.Items.Add(imprimir);
}

private void btnExtraer_Click(object sender, EventArgs e)


{
pila1.Extraer();
}

}
}

S-ar putea să vă placă și