// alea.cpp: Ejemplo de ficheros de acceso aleatorio. #include #include #include #include #include #include "Registro.h" #include "Datos.h" using namespace std; // Funciones auxiliares: int Menu(); long LeeNumero(); int main() { Registro reg; Datos datos; int opcion; long numero; do { opcion = Menu(); switch(opcion) { case '1': // Añadir registro reg.Leer(); datos.Guardar(reg); break; case '2': // Mostrar registro system("cls"); cout << "Mostrar registro: "; numero = LeeNumero(); if(datos.Recupera(numero, reg)) reg.Mostrar(); break; case '3': // Eliminar registro system("cls"); cout << "Eliminar registro: "; numero = LeeNumero(); datos.Borrar(numero); break; case '4': // Mostrar todo numero = 0; system("cls"); cout << "Nombre Datos" << endl; while(datos.Recupera(numero, reg)) reg.Listar(numero++); cout << "pulsa return"; cin.get(); break; } } while(opcion != '0'); return 0; } // Muestra un menú con las opciones disponibles y captura una opción del usuario int Menu() { char resp[20]; do { system("cls"); cout << "MENU PRINCIPAL" << endl; cout << "--------------" << endl << endl; cout << "1- Insertar registro" << endl; cout << "2- Mostrar registro" << endl; cout << "3- Eliminar registro" << endl; cout << "4- Mostrar todo" << endl; cout << "0- Salir" << endl; cin.getline(resp, 20); } while(resp[0] < '0' && resp[0] > '4'); return resp[0]; } // Lee un número suministrado por el usuario long LeeNumero() { char numero[6]; fgets(numero, 6, stdin); return atoi(numero); }