0% encontró este documento útil (0 votos)
117 vistas2 páginas

Pila Float

El documento presenta un programa en C++ que implementa una pila dinámica utilizando estructuras enlazadas. Define una estructura nodo que almacena un valor flotante y un puntero al siguiente nodo. Incluye funciones para insertar nodos en la pila, eliminar nodos, mostrar el contenido de la pila y destruirla. El programa principal crea una pila vacía y ofrece un menú para insertar, eliminar, mostrar o destruir la pila de manera recurrente hasta que el usuario elija salir.

Cargado por

caragy
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
117 vistas2 páginas

Pila Float

El documento presenta un programa en C++ que implementa una pila dinámica utilizando estructuras enlazadas. Define una estructura nodo que almacena un valor flotante y un puntero al siguiente nodo. Incluye funciones para insertar nodos en la pila, eliminar nodos, mostrar el contenido de la pila y destruirla. El programa principal crea una pila vacía y ofrece un menú para insertar, eliminar, mostrar o destruir la pila de manera recurrente hasta que el usuario elija salir.

Cargado por

caragy
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd

#include <iostream>

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
struct nodo{
float letra;
struct nodo *siguiente;
};
typedef nodo *ptrPila;
void push(ptrPila &p, float valor){
ptrPila aux;
aux=new (struct nodo);
aux->letra=valor;
aux->siguiente=p;
p=aux;
}
char pop(ptrPila &p){
float num;
ptrPila auxiliar;
auxiliar=p;
num=auxiliar->letra;
p=auxiliar->siguiente;
delete(auxiliar);
return num;
}
void mostrar(ptrPila p){
ptrPila auxiliar;
auxiliar=p;
while(auxiliar!=NULL){
printf("El numero es: %f \n", auxiliar->letra);
auxiliar=auxiliar->siguiente;
}
}
void destruir(ptrPila &p){
ptrPila auxiliar;
while(p!=NULL){
auxiliar=p;
p=auxiliar->siguiente;
delete(auxiliar);
}
}
// el void en esta funcion menu no regresa ningun tipo de dato
void menu(){
printf("Operaciones con las pilas \n");
printf("1. Insertar \n");
printf("2. Eliminar \n");
printf("3. Mostrar \n");
printf("4. Vaciar \n");
printf("5. Salir\n");
printf("Seleccione una opcion \n");
}
int main(){
ptrPila p=NULL;
float dato;
int opc;
int a;
system("color 4f");
do{
menu();
scanf("%d", &opc);
switch(opc){
case 1:
system("color 0b");
printf("Ingresa la letra a insertar: \n");
scanf("%f", &dato);
push(p, dato);
printf("El numero es: %f \n", dato);
break;
case 2:
system("color 0b");
a=pop(p);
printf("Numero eliminado: %f \n", a);
break;
case 3:
system("color 0b");
printf("Mostrando la pila \n");
if(p!=NULL){
mostrar(p);
}
else{
printf("La pila esta vacia \n");
}
break;
case 4:
system("color 0b");
destruir(p);
printf("Pila destruida \n\n");
break;
}
printf("\n\n");
system("pause"); system("cls");
}while (opc!=5);
return 0;
}

También podría gustarte