¿Cómo establezco el numero de elementos que acepta la cola?
Y ¿como muestro el elemento al principio de la cola?
#include <iostream>
#include <conio.h>
#include <stdlib.h>
using namespace std;
struct Nodo{
int dato;
Nodo *siguiente;
};
void insertarCola(Nodo *&,Nodo *&, int);
void mostrarCola(Nodo *&);
bool cola_vacia(Nodo *);
void eliminarCola(Nodo *&,Nodo *&, int &);
void frenteCola(Nodo *&);
void finalCola(Nodo *&);
int main(){
Nodo *frente = NULL;
Nodo *fin = NULL;
int dato[10];
cout<<"\nIngrese el valor para la COLA: ";
cin>>dato[10];
insertarCola(frente,fin,dato[10]);
cout<<"\nValor: " <<dato[10]<< " ingresado correctamente\n";
mostrarCola(frente);
frenteCola(frente);
finalCola(fin);
cout<<"\nLos valores fueron eliminados correctamente ";
while (frente !=NULL){
eliminarCola(frente,fin,dato[10]);
if(frente !=NULL){
cout<<dato<<" , ";
}
else{
cout<<dato<<" . ";
}
}
cout<<"\n";
return 0;
}
//Función para insertar valores a la COLA
void insertarCola(Nodo *&frente, Nodo *&fin, int n){
Nodo *nuevo_nodo = new Nodo();
nuevo_nodo->dato = n;
nuevo_nodo->siguiente = NULL;
if(cola_vacia(frente)){
frente = nuevo_nodo;
}
else{
fin->siguiente = nuevo_nodo;
}
fin = nuevo_nodo;
}
void mostrarCola(Nodo *&frente){
while(frente !=NULL){
cout<<"Datos de la cola: "<<frente->dato<< "\n";
frente=frente->siguiente;
}
}
//Función determinar si la cola esta vacía
bool cola_vacia(Nodo *frente){
return (frente == NULL)? true : false;
}
//Función para mostrar el principio de la COLA
void frenteCola(Nodo *&frente){
while(frente != NULL){
cout<<"Dato: " <<frente->dato<< " se encuentra al frente de la COLA\n";
frente = frente->siguiente;
}
}
//Función para mostrar el final de la cola
void finalCola(Nodo *&fin){
while (fin != NULL){
cout<<"Dato: " <<fin->dato<< " se encuentra al final de la COLA\n";
fin=fin->siguiente;
}
}
//Función para extraer valores de la COLA
void eliminarCola(Nodo *&frente,Nodo *&fin, int &n){
n = frente->dato;
Nodo *aux = frente;
if(frente == fin){
frente = NULL;
fin = NULL;
}
else{
frente = frente->siguiente;
}
delete aux;
}
MOD: El código debe ir entre etiquetas de Código GeSHi