0% encontró este documento útil (0 votos)
191 vistas4 páginas

Colas Circulares Lol

El documento describe una estructura de datos de cola circular en C++. Define una estructura de nodo con un campo de datos y un puntero al siguiente nodo. Luego define una estructura de cola con punteros a la cabeza y cola. Incluye funciones para insertar, eliminar, mostrar, y vaciar nodos de la cola circular. El código principal crea una cola vacía y presenta un menú para probar las funciones de la cola a través de un bucle.
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 RTF, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
191 vistas4 páginas

Colas Circulares Lol

El documento describe una estructura de datos de cola circular en C++. Define una estructura de nodo con un campo de datos y un puntero al siguiente nodo. Luego define una estructura de cola con punteros a la cabeza y cola. Incluye funciones para insertar, eliminar, mostrar, y vaciar nodos de la cola circular. El código principal crea una cola vacía y presenta un menú para probar las funciones de la cola a través de un bucle.
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 RTF, PDF, TXT o lee en línea desde Scribd

#include <iostream>

#include <stdlib.h>
#include <stdio.h>
using namespace std;

//Angy Lizeth Pabon Villar & Sonia Alejandra Morales Ardila


// ESTRUCTURA Y BASES DE DATOS GRUPO 1
// Codigo "Cola Circular con estrura"

// Codigo de estructura de un nodo de la cola circular


//Los nodos están compuestos por un espacio para un dato y una señal para el dato
siguiente
//las colas se componen de nodos y cuando uno de los nodos marca null
//es por que la cola esta llena o llegó a la posicion final.

struct nodo
{
int nro;
struct nodo *sgte;
};

//Código de Estructura principal de la cola

struct cola
{
nodo *cabeza;
nodo *cola ;
};

//Código Insertar

void insertar( struct cola &q, int valor )


{

struct nodo *aux = new(struct nodo);

aux->nro = valor;
aux->sgte = NULL;

if( [Link] == NULL)


[Link] = aux;

else
([Link])->sgte = aux;

[Link] = aux;
}

//Código Eliminar

int eliminar( struct cola &q )


{
int num ;

struct nodo *aux ;

aux = [Link];
num = aux->nro;
[Link] = ([Link])->sgte;
delete(aux);

return num;
}

//Código Visualizar Cola

void muestraCola( struct cola q )


{
struct nodo *aux;

aux = [Link];

while( aux != NULL ){

cout<<" "<< aux->nro ;


aux = aux->sgte;
}
}

//Código Vaciar la Cola

void vaciaCola( struct cola &q)


{
struct nodo *aux;

while( [Link] != NULL){

aux = [Link];
[Link] = aux->sgte;
delete(aux);
}

[Link] = NULL;
[Link] = NULL;

}
// Código del Menu

void menu()
{
printf("\n MENU \n");
printf("\n 1. INSERTAR \n");
printf("\n 2. ELIMINAR \n");
printf("\n 3. MOSTRAR COLA \n");
printf("\n 4. VACIAR COLA \n");
printf("\n 5. SALIR \n");
printf("\n INGRESE OPCION: ");

//Funcion Principal
//la función principal se modificó para agregar la estructura y que funcionara
correctamente.

int main()
{
struct cola q;

[Link] = NULL;
[Link] = NULL;

int dato;
int op;
int x ;

system("color 0A"); //Cambio de color de el menú

do
{
menu(); cin>> op;

switch(op)
{
case 1:

printf("\n NUMERO A INSERTAR: ");


scanf("%d", &dato);
insertar( q, dato );
printf("\n\n\t\tNumero %d insertado...\n\n", dato);
break;

case 2:

x = eliminar(q);
printf("\n\n\t\tNumero %x eliminado...\n\n", x);
break;

case 3:

printf("\n\n MOSTRANDO COLA\n\n");


if([Link]!=NULL) muestraCola( q );
else printf("\n\n\tCola vacia...!");
break;

case 4:

vaciaCola( q );
printf("\n\n\t\t Vacio \n\n");
break;

}
system("pause"); system("cls");

}while(op!=5);

return 0;
}

También podría gustarte