Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: qwertyui en 23 Mayo 2016, 02:38 am



Título: Ayuda! Al modificar o eliminar registros no abre el archivo .dat
Publicado por: qwertyui en 23 Mayo 2016, 02:38 am
Errores:
Case 9
case 4




Código
  1. #include <iostream>
  2. #include <string>
  3. #include <cstdlib>
  4. #include <stdio.h>
  5. #include <conio.h>
  6. #include <stdlib.h>
  7. #include <windows.h>
  8. #include <fstream>
  9. #define USER "admin"
  10. #define PASS "pavisb6"
  11. #define ENTER 13
  12. #define BACKSPACE 8
  13. FILE *archivo;
  14.  
  15. using namespace std;
  16.  
  17. int main(void)
  18. {
  19.    system("color 0B");
  20.   string usuario, password;
  21.   int contador = 0;
  22.   bool ingresa = false;
  23.  
  24.            do
  25.             {
  26.            system("cls");
  27.            cout << "\t\t\tCyber Card" << endl;
  28.            cout << "\n\tUsuario: ";
  29.            getline(cin, usuario);
  30.  
  31.            cout << "\tPassword: ";
  32.  
  33.            char caracter;
  34.            caracter = getch();
  35.  
  36.            password = "";
  37.  
  38.            while (caracter != ENTER) {
  39.  
  40.             if (caracter != BACKSPACE) {
  41.         password.push_back(caracter);
  42.         cout << "*";
  43.  
  44. } else {
  45.            if (password.length() > 0) {
  46.            cout << "\b \b";
  47.            password = password.substr(0, password.length() - 1);
  48.            }
  49. }
  50.  
  51. caracter = getch();
  52.            }
  53.  
  54.  
  55.            if (usuario == USER && password == PASS) {
  56.            ingresa = true;
  57.            } else {
  58.            cout << "\n\n\tEl usuario y/o clave de acceso son incorrectos" << endl;
  59.            cin.get();
  60.            contador++;
  61.            }
  62.            } while (ingresa == false && contador < 3);
  63.  
  64.            if (ingresa == false) {
  65.            cout << "\n\tUsted no pudo ingresar al sistema. ADIOS" << endl;
  66.            return 0;
  67.            }
  68.            else
  69.            {
  70.            cout << "\n\n\tBienvenido al sistema" << endl;
  71.            system("PAUSE");
  72.            }
  73.  
  74.            {
  75.  
  76.            system("cls");
  77.  
  78.            int opcion;
  79.                }
  80.  
  81.    char decidir;
  82.    int opcion;
  83.    int opcion2;
  84.    char regisc [20];
  85.    char fechav [10];
  86.    char tic [15];
  87.    char pagop [10];
  88.    char pregunta;
  89.    char respuesta;
  90.    bool regresar= false;
  91.    char clientep [50];
  92.    int opcion3;
  93.    bool modificar=true;
  94.    char codip [5];
  95.    bool encontrado=true;
  96.    char auxcodip [5];
  97.    char auxnombre [30];
  98.    char auxnumtarjeta;
  99.    int opcion4;
  100.    char consulta;
  101.  
  102.    do
  103.    {
  104.        Menu3:
  105.        system("cls");
  106.        cout << "Menu principal" << endl << "-----------------------" << endl;
  107.        cout << "[1] Registrar pago con tarjeta y numero de tarjeta" << endl;
  108.        cout << "[2] Modificar regristro de pago y  numero de tarjeta" << endl;
  109.        cout << "[3] Consultar registro de pagos y tarjeta" << endl;
  110.        cout << "[4] Eliminar pago con tarjeta" << endl;
  111.        cout << "[5] salir" << endl;
  112.        cout << "-------------------------" << endl<< endl;
  113.        cout << "Seleccione una opcion: ";
  114.        cin >> opcion;
  115.  
  116.        switch(opcion)
  117.  
  118.        {
  119.  
  120.            case 1:
  121.            {
  122.            Menu1:
  123.           system ("title Registro");
  124.           system ("cls");
  125.           cout << "registros" <<endl << "____________________________________" <<endl;
  126.           cout << "[7] resgistrar pago y tarjeta" <<endl;
  127.           cout << "[8] menu principal" << endl << "_____________________________" <<endl;
  128.           cout << "Elige una opcion" <<endl;
  129.           cin >> opcion2;
  130.            }
  131.               switch (opcion2)
  132.  
  133.  
  134.        {
  135.            case 7:
  136.            Menu2:
  137.            {
  138.            system ("title saber card");
  139.            system ("cls");
  140.            archivo = fopen ("registro.dat","a");
  141.            cout <<" escriba un codigo para el registro" <<endl;
  142.            cin.getline (codip, 5) >> codip;
  143.            fprintf(archivo, "%s\n", codip);
  144.            cout << "escribe el  numero de la tarjeta:" <<endl;
  145.            cin.getline (regisc, 25) >> regisc;
  146.            fprintf(archivo, "%s\n", regisc);
  147.            cout <<"escribe la fecha de pago:" <<endl;
  148.            cin.getline (fechav, 10) >> fechav;
  149.            fprintf(archivo, "%s\n", fechav);
  150.            cout << "escribe el tipo de tarjeta:"<< endl;
  151.            cin.getline (tic, 15) >> tic;
  152.            fprintf(archivo, "%s\n", tic);
  153.            cout<< "escribe el nombre del cliente" << endl;
  154.            cin.getline (clientep, 50) >> clientep;
  155.            fprintf (archivo, "%s\n", clientep);
  156.            cout << "escribe el monto a pagar del ariculo:" <<endl;
  157.            cin.getline (pagop, 25) >> pagop;
  158.            fprintf(archivo, "%s\n", pagop);
  159.            cout << "Desea agregar otro registro? (s/n)";
  160.            cin >> pregunta;
  161.  
  162.            fclose(archivo);
  163.            if (pregunta == 's' || pregunta == 'S'){ goto Menu2;}
  164.            else{
  165.            cout<< "Desea realizar otra operacion? (s/n)" <<endl;
  166.            cin>> respuesta;
  167.            if (respuesta == 's' || respuesta == 'S')
  168.            {
  169.             goto Menu1;
  170.            }
  171.  
  172.            else{
  173.            system ("cls");
  174.            cout << "adios que vuelva pronto" <<endl;
  175.  
  176.            exit (0);
  177.            }
  178.            break;
  179.            }
  180.            case 8:
  181.            {
  182.            goto Menu3;
  183.            }
  184.            }
  185.            }
  186.  
  187.            {
  188.            case 2:
  189.            {
  190.  
  191.            Menu4:
  192.            system("title Modificar");
  193.            system("cls");
  194.  
  195.            cout<<"Modificar"<<endl<<"------------------------"<<endl;
  196.            cout<<"[9]Modificar regristro de pago y/o numero de tarjeta"<<endl;
  197.            cout<<"[10]Menu principal" <<endl;
  198.            cout<<"Elige una opcion"<<endl;
  199.            cin>>opcion3;
  200.            }
  201.  
  202.            {
  203.  
  204.            switch(opcion3)
  205.  
  206.  
  207.  
  208.            {
  209.        [u][/u]    case 9:
  210.  
  211.             system ("cls");
  212.             system("title modificar registro");
  213.  
  214.            ifstream lectura;
  215.             ofstream aux;
  216.  
  217.             encontrado=false;
  218.             lectura.open("registro.dat",ios::in);
  219.             aux.open("aux.dat",ios::out);
  220.  
  221.             if(aux.is_open() && lectura.is_open())
  222.             {
  223.             cout<< "ingresa la clave del registro que desea modificar";
  224.             cin>>auxcodip;
  225.             lectura>>codip;
  226.             while(!lectura.eof())
  227.             {
  228.             lectura>>regisc>>fechav>>tic>>clientep>>pagop;
  229.               if(auxcodip == codip){
  230.                    encontrado=true;
  231.                    cout<<"____________________________"<<endl;
  232.                    cout<<"codigo:"<<codip<<endl;
  233.                    cout<<"num.tarjeta:"<<regisc<<endl;
  234.                    cout<<"fecha:"<<fechav<<endl;
  235.                    cout<<"tipo de tarjeta:"<<tic<<endl;
  236.                    cout<<"nom. cliente:"<<clientep<<endl;
  237.                    cout<<"pago:"<<pagop<<endl;
  238.                    cout<<"____________________________"<<endl;
  239.                    cout<<"ingresa el nuevo nombre del cliente con codigo"<<codip;
  240.                    aux <<codip<<" "<<regisc<<" "<<fechav<<" "<< tic<<" "<< auxnombre <<" "<<pagop;
  241.  
  242.                }else{
  243.                     aux <<codip<<" "<<regisc<<" "<<fechav<<" "<<tic<<" "<<clientep<<" "<<pagop;
  244.                }
  245.                lectura>>codip;
  246.                }
  247.  
  248.                }else{
  249.                cout<<"no se a podido abrir el archivo o aun no ha sido creado"<<endl;
  250.                }
  251.                if(encontrado==true)
  252.                cout<<"no se encontro ningun registro con esa clave"<<auxcodip<<endl;
  253.  
  254.                }
  255.                while (opcion=false);
  256.  
  257.                }
  258.  
  259.                switch (opcion3)
  260.                case 10:
  261.                {
  262.                 goto Menu3;
  263.                }
  264.  
  265.                }
  266.                 break;
  267.  
  268.  
  269.                {
  270.  
  271. case 3:
  272.  
  273.                {
  274.                system ("cls");
  275.                cout << "Consulta" <<endl<< "____________________________" << endl;
  276.                cout << "[12] Consultar datos de pago  y tarjeta"<< endl;
  277.                cout << "[13] Menu pricipal"<<endl;
  278.                cout << "__________________________" << endl;
  279.                cout << "Seleccione una opcion ";
  280.                cin>>opcion4;
  281.  
  282.  
  283.  
  284.                    switch(opcion4);
  285.                    {
  286.  
  287.  
  288.                    case 12:
  289.                    Menu5:
  290.                    {
  291.                    case 6:
  292.                    {
  293.                    system ("cls");
  294.                    archivo = fopen("registro.dat","r");
  295.                    fscanf(archivo, "%s", regisc);
  296.                    while(!feof(archivo))
  297.                    {
  298.                    cout << regisc <<endl;
  299.                    fscanf(archivo, "%s", regisc);
  300.                    }
  301.                    fclose(archivo);
  302.                    cout<< "Desea Realizar otra operacion?s/n" <<endl;
  303.                    cin>> respuesta;
  304.                    if (respuesta == 's' || respuesta == 'S')
  305.                    {goto Menu3;
  306.                            }else{
  307.                                system ("cls");
  308.                        cout << "Adios, nos vemos luego" <<endl;
  309.                        return 0;
  310.                    }
  311.                    }
  312.  
  313.                    case 13:
  314.                    {
  315.                       goto Menu3;
  316.                    }
  317.  
  318.                    }
  319.                    }
  320.                    }
  321.                    }while(consulta=true);
  322.                    break;
  323.  
  324.  
  325.                     [u][/u]case 4:
  326.  
  327.                    system("cls");
  328.                   ifstream salida;
  329.                   salida.open("registro.dat",ios::in);
  330.                   ofstream entrada;
  331.                   entrada.open("temp.dat",ios::out);
  332.  
  333.                   if(salida.fail()){
  334.                   cout<<"hubo un error al abrir el archivo registro.dat";
  335.                   getch();
  336.                   }
  337.                   else{
  338.                       cout<<"Introduzca el codigo de registro";
  339.                       cin>>auxcodip;
  340.                       salida>>codip;
  341.                       while(!salida.eof()){
  342.  
  343.                       salida>>regisc>>fechav>>tic>>clientep>>pagop;
  344.  
  345.                       if(strcmp(auxcodip,codip)==0){
  346.                        cout<<"el registro se ha eliminado";
  347.                        getch();
  348.                       }
  349.                       else{
  350.                           entrada<<codip<<" "<<regisc<<" "<<fechav<<" "<<tic<<" "<<clientep<<" "<<pagop<<endl;
  351.                       }
  352.                       salida>>codip;
  353.                       }
  354.                       entrada.close();
  355.                       salida.close();
  356.                        remove("registro.dat");
  357.                        rename("temp.dat","registro.dat");
  358.                        }
  359.  
  360.                        break;
  361.  
  362.            while (opcion=true);
  363.                    }
  364.  
  365.                        }
  366. while(opcion=true);
  367.  
  368.  
  369.                {
  370.  
  371. }
  372. }
  373.  



Mod: Los códigos deben ir en etiquetas GeSHi


Título: Re: Ayuda! Al modificar o eliminar registros no abre el archivo .dat
Publicado por: engel lex en 23 Mayo 2016, 02:46 am
no nos pongas a adivinar (o a compilar) que errores tienes? habla! da detalles...

usa las etiquetas GeSHi cuando publiques código


Título: Re: Ayuda! Al modificar o eliminar registros no abre el archivo .dat
Publicado por: qwertyui en 23 Mayo 2016, 02:55 am
Lo siento soy nuevo en esto

el problema es que cuando elijes  la opcion de modificar un registro que ya esta hecho previamente  no crea un archivo temporal el cual ebe de sustituir el original pero en si  no lee el original y no crea el archivo temporal, algo  similar le pasa a la opcion eliminar, no lee el registro por lo cual no puede eliminar nada



Título: Re: Ayuda! Al modificar o eliminar registros no abre el archivo .dat
Publicado por: MAFUS en 23 Mayo 2016, 20:04 pm
He dado formato a tu código como he podido. Es buena idea mantener el formato de las sangrías y todo eso.
Por otra parte, has abusado de las llaves. Hay tantas que has perdido la noción de qué es lo que encierran: hay do-whiles sin do, case con breaks y que continuan (un case no hace falta esté encerrado entre llaves).
Tienes gotos que te saltan entre cases de otros switch, creo... (me he perdido entre tanta llave).
En vez de anidar tantos switch deberías pensar en separar el programa en funciones.

Aquí dejo el código con un intento de reformateo:
Código
  1. #include <iostream>
  2. #include <string>
  3. #include <cstdlib>
  4. #include <stdio.h>
  5. #include <conio.h>
  6. #include <stdlib.h>
  7. #include <windows.h>
  8. #include <fstream>
  9. #define USER "admin"
  10. #define PASS "pavisb6"
  11. #define ENTER 13
  12. #define BACKSPACE 8
  13. FILE *archivo;
  14.  
  15. using namespace std;
  16.  
  17. int main(void) {
  18.    system("color 0B");
  19.    string usuario, password;
  20.    int contador = 0;
  21.    bool ingresa = false;
  22.  
  23.    do {
  24.        system("cls");
  25.        cout << "\t\t\tCyber Card" << endl;
  26.        cout << "\n\tUsuario: ";
  27.        getline(cin, usuario);
  28.        cout << "\tPassword: ";
  29.        char caracter;
  30.        caracter = getch();
  31.        password = "";
  32.        while (caracter != ENTER) {
  33.            if (caracter != BACKSPACE) {
  34.                password.push_back(caracter);
  35.                cout << "*";
  36. }
  37.            else {
  38.                if (password.length() > 0) {
  39.                cout << "\b \b";
  40.                password = password.substr(0, password.length() - 1);
  41.                }
  42. }
  43. caracter = getch();
  44.        }
  45.        if (usuario == USER && password == PASS) {
  46.            ingresa = true;
  47.        }
  48.        else {
  49.            cout << "\n\n\tEl usuario y/o clave de acceso son incorrectos" << endl;
  50.            cin.get();
  51.            contador++;
  52.        }
  53.    } while (ingresa == false && contador < 3);
  54.  
  55.    if (ingresa == false) {
  56.        cout << "\n\tUsted no pudo ingresar al sistema. ADIOS" << endl;
  57.        return 0;
  58.    }
  59.    else {
  60.        cout << "\n\n\tBienvenido al sistema" << endl;
  61.        system("PAUSE");
  62.    }
  63.    {
  64.        system("cls");
  65.        int opcion;
  66.    }
  67.  
  68.    char decidir;
  69.    int opcion;
  70.    int opcion2;
  71.    char regisc [20];
  72.    char fechav [10];
  73.    char tic [15];
  74.    char pagop [10];
  75.    char pregunta;
  76.    char respuesta;
  77.    bool regresar= false;
  78.    char clientep [50];
  79.    int opcion3;
  80.    bool modificar=true;
  81.    char codip [5];
  82.    bool encontrado=true;
  83.    char auxcodip [5];
  84.    char auxnombre [30];
  85.    char auxnumtarjeta;
  86.    int opcion4;
  87.    char consulta;
  88.  
  89.    do {
  90.        Menu3:
  91.        system("cls");
  92.        cout << "Menu principal" << endl << "-----------------------" << endl;
  93.        cout << "[1] Registrar pago con tarjeta y numero de tarjeta" << endl;
  94.        cout << "[2] Modificar regristro de pago y  numero de tarjeta" << endl;
  95.        cout << "[3] Consultar registro de pagos y tarjeta" << endl;
  96.        cout << "[4] Eliminar pago con tarjeta" << endl;
  97.        cout << "[5] salir" << endl;
  98.        cout << "-------------------------" << endl<< endl;
  99.        cout << "Seleccione una opcion: ";
  100.        cin >> opcion;
  101.  
  102.        switch(opcion) {
  103.            case 1:
  104.                {
  105.                    Menu1:
  106.                    system ("title Registro");
  107.                    system ("cls");
  108.                    cout << "registros" <<endl << "____________________________________" <<endl;
  109.                    cout << "[7] resgistrar pago y tarjeta" <<endl;
  110.                    cout << "[8] menu principal" << endl << "_____________________________" <<endl;
  111.                    cout << "Elige una opcion" <<endl;
  112.                    cin >> opcion2;
  113.                }
  114.                switch(opcion2) {
  115.                    case 7:
  116.                    Menu2:
  117.                        {
  118.                            system ("title saber card");
  119.                            system ("cls");
  120.                            archivo = fopen ("registro.dat","a");
  121.                            cout <<" escriba un codigo para el registro" <<endl;
  122.                            cin.getline (codip, 5) >> codip;
  123.                            fprintf(archivo, "%s\n", codip);
  124.                            cout << "escribe el  numero de la tarjeta:" <<endl;
  125.                            cin.getline (regisc, 25) >> regisc;
  126.                            fprintf(archivo, "%s\n", regisc);
  127.                            cout <<"escribe la fecha de pago:" <<endl;
  128.                            cin.getline (fechav, 10) >> fechav;
  129.                            fprintf(archivo, "%s\n", fechav);
  130.                            cout << "escribe el tipo de tarjeta:"<< endl;
  131.                            cin.getline (tic, 15) >> tic;
  132.                            fprintf(archivo, "%s\n", tic);
  133.                            cout<< "escribe el nombre del cliente" << endl;
  134.                            cin.getline (clientep, 50) >> clientep;
  135.                            fprintf (archivo, "%s\n", clientep);
  136.                            cout << "escribe el monto a pagar del ariculo:" <<endl;
  137.                            cin.getline (pagop, 25) >> pagop;
  138.                            fprintf(archivo, "%s\n", pagop);
  139.                            cout << "Desea agregar otro registro? (s/n)";
  140.                            cin >> pregunta;
  141.  
  142.                            fclose(archivo);
  143.  
  144.                            if (pregunta == 's' || pregunta == 'S') {
  145.                                goto Menu2;
  146.                            }
  147.                            else {
  148.                                cout<< "Desea realizar otra operacion? (s/n)" <<endl;
  149.                                cin>> respuesta;
  150.  
  151.                                if (respuesta == 's' || respuesta == 'S') {
  152.                                    goto Menu1;
  153.                                }
  154.                                else {
  155.                                    system ("cls");
  156.                                    cout << "adios que vuelva pronto" <<endl;
  157.                                    exit (0);
  158.                                }
  159.                                break;
  160.                            }
  161.                        case 8:
  162.                            {
  163.                                goto Menu3;
  164.                            }
  165.                    }
  166.                }
  167.  
  168.                {
  169.                    case 2:
  170.                        {
  171.  
  172.                            Menu4:
  173.                            system("title Modificar");
  174.                            system("cls");
  175.  
  176.                            cout<<"Modificar"<<endl<<"------------------------"<<endl;
  177.                            cout<<"[9]Modificar regristro de pago y/o numero de tarjeta"<<endl;
  178.                            cout<<"[10]Menu principal" <<endl;
  179.                            cout<<"Elige una opcion"<<endl;
  180.                            cin>>opcion3;
  181.                        }
  182.  
  183.                        {
  184.                            switch(opcion3) {
  185.                                case 9:
  186.                                    system("cls");
  187.                                    system("title modificar registro");
  188.  
  189.                                    ifstream lectura;
  190.                                    ofstream aux;
  191.                                    encontrado = false;
  192.                                    lectura.open("registro.dat",ios::in);
  193.                                    aux.open("aux.dat",ios::out);
  194.  
  195.                                    if(aux.is_open() && lectura.is_open()) {
  196.                                        cout<< "ingresa la clave del registro que desea modificar";
  197.                                        cin>>auxcodip;
  198.                                        lectura>>codip;
  199.  
  200.                                        while(!lectura.eof()) {
  201.                                            lectura>>regisc>>fechav>>tic>>clientep>>pagop;
  202.  
  203.                                            if(auxcodip == codip) {
  204.                                                encontrado = true;
  205.                                                cout<<"____________________________"<<endl;
  206.                                                cout<<"codigo:"<<codip<<endl;
  207.                                                cout<<"num.tarjeta:"<<regisc<<endl;
  208.                                                cout<<"fecha:"<<fechav<<endl;
  209.                                                cout<<"tipo de tarjeta:"<<tic<<endl;
  210.                                                cout<<"nom. cliente:"<<clientep<<endl;
  211.                                                cout<<"pago:"<<pagop<<endl;
  212.                                                cout<<"____________________________"<<endl;
  213.                                                cout<<"ingresa el nuevo nombre del cliente con codigo"<<codip;
  214.                                                aux <<codip<<" "<<regisc<<" "<<fechav<<" "<< tic<<" "<< auxnombre <<" "<<pagop;
  215.                                            }
  216.                                            else {
  217.                                                aux <<codip<<" "<<regisc<<" "<<fechav<<" "<<tic<<" "<<clientep<<" "<<pagop;
  218.                                            }
  219.                                            lectura>>codip;
  220.                                        }
  221.                                    }
  222.                                    else {
  223.                                        cout<<"no se a podido abrir el archivo o aun no ha sido creado"<<endl;
  224.                                    }
  225.  
  226.                                    if(encontrado == true)
  227.                                        cout<<"no se encontro ningun registro con esa clave"<<auxcodip<<endl;
  228.                            }
  229.                            while (opcion=false);
  230.                        }
  231.  
  232.                        switch (opcion3) // falta {
  233.                            case 10:
  234.                                {
  235.                                    goto Menu3;
  236.                                }
  237.  
  238.                        } //?
  239.                        break;
  240.                        {
  241.  
  242.                        case 3:
  243.                            {
  244.                                system ("cls");
  245.                                cout << "Consulta" <<endl<< "____________________________" << endl;
  246.                                cout << "[12] Consultar datos de pago  y tarjeta"<< endl;
  247.                                cout << "[13] Menu pricipal"<<endl;
  248.                                cout << "__________________________" << endl;
  249.                                cout << "Seleccione una opcion ";
  250.                                cin>>opcion4;
  251.  
  252.                                switch(opcion4); /* sobra el ; */ {
  253.                                    case 12:
  254.                                        Menu5:
  255.                                            {
  256.                                                case 6:
  257.                                                    {
  258.                                                        system ("cls");
  259.                                                        archivo = fopen("registro.dat","r");
  260.                                                        fscanf(archivo, "%s", regisc);
  261.  
  262.                                                        while(!feof(archivo)) {
  263.                                                        cout << regisc <<endl;
  264.                                                        fscanf(archivo, "%s", regisc);
  265.                                                        }
  266.                                                        fclose(archivo);
  267.                                                        cout<< "Desea Realizar otra operacion?s/n" <<endl;
  268.                                                        cin>> respuesta;
  269.  
  270.                                                        if (respuesta == 's' || respuesta == 'S') {
  271.                                                            goto Menu3;
  272.                                                        }
  273.                                                        else {
  274.                                                            system ("cls");
  275.                                                            cout << "Adios, nos vemos luego" <<endl;
  276.                                                            return 0;
  277.                                                        }
  278.                                                    }
  279.                                                case 13:
  280.                                                    {
  281.                                                        goto Menu3;
  282.                                                    }
  283.  
  284.                                            }
  285.                                }
  286.                            }
  287.                        } while(consulta = true);
  288.                        break;
  289.                        case 4:
  290.                            system("cls");
  291.                            ifstream salida;
  292.                            salida.open("registro.dat",ios::in);
  293.                            ofstream entrada;
  294.                            entrada.open("temp.dat",ios::out);
  295.  
  296.                            if(salida.fail()) {
  297.                                cout<<"hubo un error al abrir el archivo registro.dat";
  298.                                getch();
  299.                            }
  300.                            else {
  301.                                cout<<"Introduzca el codigo de registro";
  302.                                cin>>auxcodip;
  303.                                salida>>codip;
  304.  
  305.                                while(!salida.eof()) {
  306.                                    salida>>regisc>>fechav>>tic>>clientep>>pagop;
  307.  
  308.                                    if(strcmp(auxcodip,codip) == 0) {
  309.                                        cout<<"el registro se ha eliminado";
  310.                                        getch();
  311.                                    }
  312.                                    else {
  313.                                        entrada<<codip<<" "<<regisc<<" "<<fechav<<" "<<tic<<" "<<clientep<<" "<<pagop<<endl;
  314.                                    }
  315.                                    salida>>codip;
  316.                                }
  317.                                entrada.close();
  318.                                salida.close();
  319.                                remove("registro.dat");
  320.                                rename("temp.dat","registro.dat");
  321.                            }
  322.  
  323.                            break;
  324.  
  325.                            while (opcion = true);
  326.        }
  327.  
  328.    } while(opcion=true);
  329.    {}
  330. }