Facultad de Ingeniería Ingeniería de Sistemas Estructuras Básicas – G:212 Tema: Listas Enlazadas Luis Alberto Castillo Bello Código: 201311011601
1. Función Menú Prueba(s) void menu(){ int opc,numero; do{ cout<
>opc; clrscr(); switch(opc){ case 1: cout<<"\n\t Ingrese Numero : "; cin>>numero; insertar(numero); //getch(); clrscr(); break; case 2:mostrar();getch();clrscr();break; case 3:cout<<"\n\t Ingrese Numero a Buscar : "; cin>>numero; buscar(numero);getch();clrscr();break; case 4:cout<<"\n\t Ingrese Numero a Modificar : "; cin>>numero; modificar(numero);getch();clrscr();break; case 5:cout<<"\n\t Ingrese Numero a Eliminar : "; cin>>numero; eliminar(numero);getch();clrscr();break; } }while(opc!=6); } int main() { menu(); } Análisis del resultado: Se realiza una interfaz grafica para el usuario de forma navegable, fácil de usar y entender. Cumpliendo con las funciones básicas de una base de datos; así mismo relacionando cada opción como un caso que interactúa con la función llamada.
2. Main y estructura del programa #include #include #include #include #include using namespace std; struct nodo{ int nro; nodo *sgte; }; struct nodo *pi, *pa, *pf;
Prueba(s)
void menu(); void insertar(int); void mostrar(); void buscar(); void eliminar(); void modificar(); void clrscr(); void clrscr(){ system("cls"); } Análisis de resultados: Aquí se hace llamado a las librerías necesarias para ejecutar el programa, el uso de un namespace para el uso adecuado de las funciones y las funciones (void) requeridas para que el programa se ejecute satisfactoriamente
3. Función Insertar Prueba(s) void insertar(int numero){ if(pi==NULL){ pi=new(nodo); pi->nro=numero; pf=pi; } else{ pa=new(nodo); pf->sgte=pa; pa->nro=numero; pf=pa; } pf->sgte=NULL; } Análisis del resultado: Se le pide al usuario que ingrese por teclado un número para almacenarlo en la lista, si es el primer dato en la lista crea la lista y el dato de una vez.
4. Función Mostrar Prueba(s) void mostrar(){ pa=pi; if(pi==NULL) { cout<<"\n\t lista vacia"; } while(pa!=NULL){ cout< "<nro; pa=pa->sgte; } } Análisis de resultados: Muestra todos los datos en pantalla que existen en la lista, si no existe ningún dato se le informara que la lista esta vacia
5. Enunciado Buscar Prueba(s) void buscar(int numero){ int flag=0; pa=pi; if(pi==NULL) { cout<<"\n\t lista vacia"; } else { /*cout<>nro_buscar;*/ while(pa!=NULL){ if(numero==pa->nro){ cout<nro; flag=1; } pa=pa->sgte; } if(flag==0){ cout<
6. Función Modificar Prueba(s) void modificar(int numero){ pa=pi; if(pi==NULL) { cout<<"\n\t lista vacia"; } else { int nro_mod,flag=0; /*cout<>nro_mod;*/ while(pa!=NULL){ if(numero==pa->nro && flag==0){ cout<nro; cout<>pa->nro; flag=1; } pa=pa->sgte; } if(flag==0){ cout<
7. Función Eliminar void eliminar(int numero){ struct nodo *pant=NULL; //pa=pi; //pant=NULL; if(pi==NULL){ cout<<"\n\t lista vacia"; } else{ if(pi->nro==numero){ pa=pi; pi=pi->sgte; cout<<"\n\t numero eliminado : "<
Prueba(s)
>nro; } else{ pa=pi->sgte; pant=pi; while(pa!=NULL &&pa->nro!=numero){ pant=pa; pa=pa->sgte; } if(pa!=NULL){ pant->sgte=pa->sgte; cout<<"\n\t numero eliminado : "<nro; } } delete(pa); } } Análisis de resultados: Al igual que la función modificar el programa le pide a l usuario un numero a eliminar, es decir realiza una búsqueda para comprobar si el dato existe en la lista y así eliminarlo; si el dato buscado no se encuentra se le informará por pantalla al usuario que no existe tal dato.
Video de implementación del código y ejecución: http://goo.gl/FqQFt