Estructura y Base de datos
KeNa McCartneyEnsayo19 de Abril de 2020
783 Palabras (4 Páginas)161 Visitas
[pic 1][pic 2]
INSTITUTO POLITECNICO NACIONAL
´ESTRUCTURA Y BASE DE DATOS
OROZCO GASCON ANA GABRIELA
RUELAS MORALES LUIS ARTURO
PROGRAMA QUE MANIPULA UNA BASE DE DATOS
Mediante la interacción con el programa manipularemos una base de datos los cuales ya habías sido previamente ingresado en una nota de texto con terminación .TXT
Para dicho programa utilizaremos los conocimientos adquiridos durante las clases y prácticas en la materia como son, nodos, clases, cadenas de caracteres, comparar cadenas, entre otras
Al ejecutar el programa nos aparece un pequeño menú con las opciones que podemos realizar con el programa
[pic 3]
Al seleccionar una de las opciones nos pedirá algunos datos como el nombre del archivo que deseamos manipular y dependiendo de la opción escogida nos pedirá algunos datos necesarios para ejecutar el programa
[pic 4]
Una vez ingresado los datos correspondientes el programa podrá
- Cargar a la lista un archivo de nombres completo
- Mostrar la lista de archivo completa que se agregó anteriormente
- Cargar un rango de nombres dentro de la lista
- Mostrar los nombres en el rango seleccionado
- Eliminar un rango de nombres dentro de la lista
- Mostrar los nombres que eliminamos dentro de la lista dependiendo del rango que deseamos
- Salir del programa
Al terminar nuestro programa nos mostrara como salida una lista en un archivo de nota .TXT en la cual ya se haya ejecutado lo que anteriormente colocamos en el programa o bien se pude mostrar en pantalla lo que se realizó como en el caso de mostrar los nombres cargados o los nombres eliminados
[pic 5]
Dentro del programa los principales errores que encontramos fueron algunas estructuras y el manejo de las mismas
Algunos ejemplos
nodo* ListaNombres::Inserta(char *nombre)
{
nodo *nuevo, *act, *ant;
if((nuevo=new nodo)==0) return 0;
if((nuevo->info=new char[strlen(nombre)+1])==0) return 0;
strcpy(nuevo->info, nombre);
act=inicio;
ant=inicio;
while(act)
{
if(strcmp(act->info, nuevo->info)>=0)break;
ant=act;
act=act->sig;
}
if(act==ant){nuevo->sig=inicio; inicio=nuevo;}
else{ nuevo->sig=ant->sig; ant->sig=nuevo;}
return nuevo;
}
Dado que no habíamos utilizado anteriormente estas estructura no sabíamos bien cómo funcionaba así que mediante ensayo y error y con búsqueda en la web pudimos arreglar este problema
Asi mismo en todas las opciones nos dimos cuenta que la lista que arrojaba era la misma y no se efectuaban cambios en ella ni se guardaban los cambios y esto lo resolvimos dándonos cuenta que hay diferentes referencias para cada cosa
Le decimos al compilador que el puntero tome la dirección del archivo prueba.txt y poniendo "w" como segundo parámetro definimos que el archivo debe ser creado en caso de que no exista y en caso de existir se sobrescribirá (se borraran los datos ya existentes) además que solo podemos usar el archivo para escritura únicamente.
Dependiendo de la letra que se ponga como segundo parámetro se puede hacer distintos usos del archivo por ejemplo para la lectura de datos.
"r" Abrir un archivo para lectura. El archivo debe existir.
"w" Crear un archivo vacío para la escritura. Si un archivo con el mismo nombre ya existe su contenido se borra y el archivo se trata como un nuevo archivo vacío.
"a" Anexar a un archivo. Operaciones de escritura añadir datos al final del archivo. El archivo se crea si no existe.
"r+" Abrir un archivo de actualización de la lectura y la escritura. El archivo debe existir.
"w+" Crear un archivo vacío, tanto para la lectura y la escritura. Si un archivo con el mismo nombre ya existe su contenido se borra y el archivo se trata como un nuevo archivo vacío.
"a+" Abrir un archivo para leer y añadir. Todas las operaciones de escritura se realizan al final del archivo, la protección del contenido anterior a ser sobrescrito. Puede cambiar la posición ( fseek , rewind ) el puntero interno a cualquier parte del archivo para su lectura, pero las operaciones de escritura hará que se mueva de nuevo al final del archivo. El archivo se crea si no existe.
...