All pastes #995916 Raw Edit

Stuff

public cpp v1 · immutable
#995916 ·published 2008-04-24 16:05 UTC
rendered paste body
#include <stdio.h>#include <stdlib.h>#include <ncurses.h>//#include <pate.h>typedef int TipoDato;struct TipoNodo{	TipoDato Dato;	TipoNodo *next;};typedef TipoNodo *Pila;typedef TipoNodo *Nodo;/* Crea el primer elemento de la Pila, asigna NULL al puntero next y la ctm*/bool CrearPila(Pila p){    p=(Pila)malloc(sizeof(struct TipoNodo));    if(p==NULL)        return false;    else{        p->next=NULL;        return true;    }}// Suponiendo que cuando se elimina el ultimo elemento de la Pila, el puntero// cabeza quede apuntando a NULLbool PilaVacia(Pila p){    if(p==NULL)        return true;    else        return false;}bool PilaLlena(Pila p){		return true;}TipoDato Tope(Pila p){    TipoDato Resultado;    if(PilaVacia(p)==false)        Resultado=p->Dato;    return Resultado;}bool Apilar(Pila p, TipoDato e){		return true;}bool Desapilar(Pila &P){		return true;}void Ingresar_Dato(TipoDato &Nodo){}void Imprimir_Nodo(TipoDato &Nodo){}	int main(void){    Pila p=NULL;    TipoDato e;	char opcion;	bool resultado=false;	     do{    	system("clear");    	printf("Ponte las Pilas 1.2b\n\n");		printf(" 1.- Crear Pila\n");		printf(" 2.- Verificar si la Pila esta Vacia\n");		printf(" 3.- Verificar si la Pila esta Llena\n");		printf(" 4.- Desapilar un elemento\n");		printf(" 5.- Apilar un elemento\n");		printf(" 6.- Elemento Tope\n");		printf(" 0.- Salir\n");		printf("Ingrese Opcion: ");		scanf("%c",&opcion);		switch (opcion){			case '1':				if(CrearPila(p)==true)					printf("\nPila creada o inicializada");				else					printf("\nError en la creacion de Pila");				break;			case '2':				resultado=PilaVacia(p);				if (resultado==true)					printf("\nLa Pila se encuentra VACIA");				else					printf("\nLa Pila NO se encuentra VACIA");				break;			case '3':				resultado=PilaLlena(p);				if (resultado==true)					printf("\nLa Pila se encuentra LLENA");				else					printf("\nLa Pila NO se encuentra LLENA");				break;			case '4':				resultado=Desapilar(p);				if (resultado==true)					printf("\nSe ha desapilado un elemento correctamente");				else					printf("\nNO se ha podido Desapilar un elemento");				break;			case '5':				Ingresar_Dato(e);				resultado=Apilar(p,e);				if (resultado==true)					printf("\nSe ha podido APILAR el nodo CORRECTAMENTE");				else					printf("\nNO se ha podido apilar el nodo");				break;			case '6':				resultado=PilaVacia(p);				if (resultado==false){					e=Tope(p);					Imprimir_Nodo(e);				}				else					printf("La pila se encuentra VACIA, NO se puede mostrar TOPE");				break;			case '0':				break;		}	}while(opcion!='0');    return 0;}