Programa de Pilas
Programa de Pilas
Estructuras de Datos
NRC 60-69824
Estudiante:
Yeison Fabian Rios Montealegre
Docente:
José Gilberto Molina
struct Nodo {
int dato;
Nodo* siguiente;
};
int main() {
Nodo* pila = nullptr;
int opcion, cantidad, valor;
do {
menu();
cin >> opcion;
switch (opcion) {
case 1:
cout << "\n------------------------------------\n";
cout << "¿Cuantos nodos desea agregar?: ";
cin >> cantidad;
crearPila(pila, cantidad);
break;
case 2:
cout << "\n------------------------------------\n";
cout << "¿Cuantos nodos desea eliminar?: ";
cin >> cantidad;
if (cantidad > contarNodos(pila)) {
cout << "No es posible eliminar mas nodos de los que hay en la
pila." << endl;
} else {
extraerNodos(pila, cantidad);
}
break;
case 3:
cout << "\n------------------------------------\n";
mostrar(pila);
break;
case 4:
cout << "\n------------------------------------\n";
cout << "El numero de nodos en la pila es: " << contarNodos(pila) <<
endl;
break;
case 5:
cout << "\n------------------------------------\n";
cout << "Ha salido exitosamente del programa";
cout << "\n------------------------------------\n";
break;
default:
cout << "\n------------------------------------\n";
cout << "La opcion no es valida, intente de nuevo." << endl;
cout << "------------------------------------\n";
}
return 0;
}
void menu() {
cout << "------------------ ";
cout << "\n MENU DE OPCIONES\n";
cout << "------------------ \n";
cout << "1| Crear pila\n";
cout << "2| Extraer nodos\n";
cout << "3| Mostrar datos\n";
cout << "4| Mostrar cantidad de nodos\n";
cout << "5| Salir\n";
cout << "\nSeleccione una opcion: ";