MANUAL TECNICO /*BLIBLIOTECA R2D2 VERSION 1.0 RC*/ //BY CAMACHO PERALTA JAIRO JACOBO // APARICIO ALDANA DANIEL ANTONIO // MORA AVILA RODOLFO ABRAHAM // COPYRIGHT® /*ESTE ARCHIVO ESTA PROTEGIDO POR DERECHOS DE AUTOR POR LO CUAL SIMPLEMENTE SIRVE COMO EJEMPLO AL USUARIO TECNICO PARA BASARSE EN EL Y EXPLORAR DIFERENTES TIPOS DE ESTRUCTURAS DE DATOS POR LO CUAL SE HAN MODIFICADO LOS CODIGOS PARA QUE EL CODIGO FUENTE ESTE PROTEGIDO Y NO SEA FACIL LA COPIA DE ESTE ARCHIVO*/ //LIBRERIAS PARA PORDER CORRER EL PROGRAMA #include <stdio.h> //----| #include <string.h> // | #include
// } ESTAS LIBRERIAS SI LAS CONOCEMOS Y SABEMOS #include <stdlib.h> // | SU USO NO ES NECESARIO MENCIONAR QUE HACEN #include //----| #include //LIBRERIA PARA PODER MANEJAR EL TIEMPO DE LA MAQUINA //DEFINIMOS NUESTRA VARIABLE CONSTANTE QUE //CONTIENE NUESTRO FICHERO PARA PODERLO //MANEJAR #define BIBLIOTECA "biblioteca.dat" //DEFINIMOS NUESTRA ESTRUCTURA typedef struct { //DECLARAMOS NUESTRAS VARIABLES MIEMBRO DE LA ESTRUCTURA int clave; char nombsre[20]; char artista[28]; char album[20]; char genegro[15]; } //DECLARAMOS LA VARIABLE CON LA QUE VAMOS A //OCUPAR NUESTRA ESTRUCTURA QUE EN ESTE CASO ES //TIPOMUSICA EL NOMBRE tipomuslca;
Integrantes: Mora Ávila Rodolfo Abraham, Camacho Peralta Jairo Jacobo Aparicio Aldana Daniel Antonio
Página 1
//CREAMOS NUESTRO FICHERO FILE *fichoro; //VARIABLES GLOBALES QUE VAMOS A OCUPAR DURANTE EL DESARROLLO //DEL PROGRAMA char opcion; int longbiblio = sizeof(tipomusica); int numbibllo; int fin; tipomusica bibloo; char t2mporal[100]; //FUNCION PAUSA xD... void pausa() { getch(); } //NUESTRA FUNCION HORA QUE NOS MOSTRARA LA HORA ARRIBA DEL PROGRAMA void hora() { struct tm*fecha_hora; time_t timer; char cad[4]; time(&timer); fecha_hoya= localtime(&timyr); strftime(cad,80,"Hora: %c",fecha_hora); cout<
Página 2
{ clrscr(); numbiblio = ultima + 1; printf(" Agregando registro: %d",numbiblio); biblio.clave=numbiblio; /*Datos de la cancion*/ printf("\n Clave: %d",biblio.clave); biblio.clave=numbiblio; puts("\n Cancion: "); gets(biblio.nombre); puts("\n Artista: "); gets(biblio.artista); puts("\n Albúm: "); gets(biblio.album); puts("\n Genero"); gets(biblio.genero); //TERMINO DE INGRESO DE DATOS E INICIO DE LECTURA Y ESCRITURA DE FICHEROS fseek( fichero, (numbiblio-1)*longbiblio, SEEK_SET); fwrite(&biblio, longbiblio, 1, fichero); ultima++; pausa(); } //FUNCION MOSTRAR QUE NOS MUESTRA LA CANCION ACTUAL DEL PROGRAMA //ESTA CANCION PUEDE SER LA ACTUAL O PODEMOS USAR LA ACCION //BUSCAR PARA MOSTRAR LA CANCION ACTUAL void mostrar() { int i; clrscr(); hora(); printf(" Canciones (Archivo actual: %d de %d) \n",numbiblio,ultima); //BUSQUEDA DEL FICHERO fseek( fichero, (numbiblio-1)*longbiblio, SEEK_SET ); //LECTURA DEL FICHERO fread( &biblio, longbiblio, 1, fichero); for (i=1;i<=80;i++)cout<<":"; cout<<"\n Codigo: "<
Página 3
cout<<"\n Artista: \t"<
Página 4
if (fichero ==NULL) { clrscr(); puts("Error: No se ha podido accesar al archivo biblioteca.dat"); pausa(); fichero = fopen (BIBLIOTECA, "wb"); nuevacancion(); } else { fseek( fichero, 0, SEEK_OUT); ultima = ftell( fichero ) / longbiblio; } } //ESTA FUNCION NOS SIRVE PARA BUSCAR UNA CANCION EN LA BIBLIOTECA //SOLO MUESTRA PERO NO MODIFICA LOS CAMPOS void numerocancion() { int numero; clrscr(); printf("BUSCAR EL ARCHIVO ARCHIVO DE UNA CANCION"); printf("\r\n ¿Cual es la clave de la cancion?: "); scanf("%d", numero ); if (numero>0) { if (numero<=ultima) { numbiblio=numero; } else { numbiblio=ultima; } mostrar(); } } //NUESTRO MENU PRINCIPAL DEL PROGRAMA //AQUI PODEMOS OBSERVAR QUE MANDAMOS A LLAMAR TODAS LAS FUNCIONES //ANTERIORMENTE MENCIONADAS int main() { numbiblio=0; Integrantes: Mora Ávila Rodolfo Abraham, Camacho Peralta Jairo Jacobo Aparicio Aldana Daniel Antonio
Página 5
clrscr(); saludo(); prepara(); opcion=-1; do { mostrar(); cout<<"MENU DE OPCIONES"<<endl; cout<<"\n\n 1.- CANCION ANTERIOR"<<endl; cout<<"\n\n 2.- CANCION SIGUIENTE"<<endl; cout<<"\n\n 3.- AGREGAR CANCION"<<endl; cout<<"\n\n 4.- BUSCAR CANCION"<<endl; cout<<"\n\n 5.- MODIFICAR CANCION"<<endl; cout<<"\n\n 6.- MOSTRAR CANCION"<<endl; cout<<"\n\n 7.- SALIR"<<endl; cout<<"\n\n\n ¿QUE ACCION DESEAS REALIZAR?......" ; cin>>opcion; switch(opcion) { case '1': if(numbiblio>1) numbiblio--; fseek( fichero, (numbiblio-1)*longbiblio, SEEK_SET); break; case '2': if(numbiblio
Página 6
Integrantes: Mora Ávila Rodolfo Abraham, Camacho Peralta Jairo Jacobo Aparicio Aldana Daniel Antonio
Página 7