Case 9
case 4
Código
#include <iostream> #include <string> #include <cstdlib> #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <windows.h> #include <fstream> #define USER "admin" #define PASS "pavisb6" #define ENTER 13 #define BACKSPACE 8 FILE *archivo; using namespace std; int main(void) { system("color 0B"); string usuario, password; int contador = 0; bool ingresa = false; do { system("cls"); cout << "\t\t\tCyber Card" << endl; cout << "\n\tUsuario: "; getline(cin, usuario); cout << "\tPassword: "; char caracter; caracter = getch(); password = ""; while (caracter != ENTER) { if (caracter != BACKSPACE) { password.push_back(caracter); cout << "*"; } else { if (password.length() > 0) { cout << "\b \b"; password = password.substr(0, password.length() - 1); } } caracter = getch(); } if (usuario == USER && password == PASS) { ingresa = true; } else { cout << "\n\n\tEl usuario y/o clave de acceso son incorrectos" << endl; cin.get(); contador++; } } while (ingresa == false && contador < 3); if (ingresa == false) { cout << "\n\tUsted no pudo ingresar al sistema. ADIOS" << endl; return 0; } else { cout << "\n\n\tBienvenido al sistema" << endl; system("PAUSE"); } { system("cls"); int opcion; } char decidir; int opcion; int opcion2; char regisc [20]; char fechav [10]; char tic [15]; char pagop [10]; char pregunta; char respuesta; bool regresar= false; char clientep [50]; int opcion3; bool modificar=true; char codip [5]; bool encontrado=true; char auxcodip [5]; char auxnombre [30]; char auxnumtarjeta; int opcion4; char consulta; do { Menu3: system("cls"); cout << "Menu principal" << endl << "-----------------------" << endl; cout << "[1] Registrar pago con tarjeta y numero de tarjeta" << endl; cout << "[2] Modificar regristro de pago y numero de tarjeta" << endl; cout << "[3] Consultar registro de pagos y tarjeta" << endl; cout << "[4] Eliminar pago con tarjeta" << endl; cout << "[5] salir" << endl; cout << "-------------------------" << endl<< endl; cout << "Seleccione una opcion: "; cin >> opcion; switch(opcion) { case 1: { Menu1: system ("title Registro"); system ("cls"); cout << "registros" <<endl << "____________________________________" <<endl; cout << "[7] resgistrar pago y tarjeta" <<endl; cout << "[8] menu principal" << endl << "_____________________________" <<endl; cout << "Elige una opcion" <<endl; cin >> opcion2; } switch (opcion2) { case 7: Menu2: { system ("title saber card"); system ("cls"); archivo = fopen ("registro.dat","a"); cout <<" escriba un codigo para el registro" <<endl; cin.getline (codip, 5) >> codip; fprintf(archivo, "%s\n", codip); cout << "escribe el numero de la tarjeta:" <<endl; cin.getline (regisc, 25) >> regisc; fprintf(archivo, "%s\n", regisc); cout <<"escribe la fecha de pago:" <<endl; cin.getline (fechav, 10) >> fechav; fprintf(archivo, "%s\n", fechav); cout << "escribe el tipo de tarjeta:"<< endl; cin.getline (tic, 15) >> tic; fprintf(archivo, "%s\n", tic); cout<< "escribe el nombre del cliente" << endl; cin.getline (clientep, 50) >> clientep; fprintf (archivo, "%s\n", clientep); cout << "escribe el monto a pagar del ariculo:" <<endl; cin.getline (pagop, 25) >> pagop; fprintf(archivo, "%s\n", pagop); cout << "Desea agregar otro registro? (s/n)"; cin >> pregunta; fclose(archivo); if (pregunta == 's' || pregunta == 'S'){ goto Menu2;} else{ cout<< "Desea realizar otra operacion? (s/n)" <<endl; cin>> respuesta; if (respuesta == 's' || respuesta == 'S') { goto Menu1; } else{ system ("cls"); cout << "adios que vuelva pronto" <<endl; exit (0); } break; } case 8: { goto Menu3; } } } { case 2: { Menu4: system("title Modificar"); system("cls"); cout<<"Modificar"<<endl<<"------------------------"<<endl; cout<<"[9]Modificar regristro de pago y/o numero de tarjeta"<<endl; cout<<"[10]Menu principal" <<endl; cout<<"Elige una opcion"<<endl; cin>>opcion3; } { switch(opcion3) { [u][/u] case 9: system ("cls"); system("title modificar registro"); ifstream lectura; ofstream aux; encontrado=false; lectura.open("registro.dat",ios::in); aux.open("aux.dat",ios::out); if(aux.is_open() && lectura.is_open()) { cout<< "ingresa la clave del registro que desea modificar"; cin>>auxcodip; lectura>>codip; while(!lectura.eof()) { lectura>>regisc>>fechav>>tic>>clientep>>pagop; if(auxcodip == codip){ encontrado=true; cout<<"____________________________"<<endl; cout<<"codigo:"<<codip<<endl; cout<<"num.tarjeta:"<<regisc<<endl; cout<<"fecha:"<<fechav<<endl; cout<<"tipo de tarjeta:"<<tic<<endl; cout<<"nom. cliente:"<<clientep<<endl; cout<<"pago:"<<pagop<<endl; cout<<"____________________________"<<endl; cout<<"ingresa el nuevo nombre del cliente con codigo"<<codip; aux <<codip<<" "<<regisc<<" "<<fechav<<" "<< tic<<" "<< auxnombre <<" "<<pagop; }else{ aux <<codip<<" "<<regisc<<" "<<fechav<<" "<<tic<<" "<<clientep<<" "<<pagop; } lectura>>codip; } }else{ cout<<"no se a podido abrir el archivo o aun no ha sido creado"<<endl; } if(encontrado==true) cout<<"no se encontro ningun registro con esa clave"<<auxcodip<<endl; } while (opcion=false); } switch (opcion3) case 10: { goto Menu3; } } break; { case 3: { system ("cls"); cout << "Consulta" <<endl<< "____________________________" << endl; cout << "[12] Consultar datos de pago y tarjeta"<< endl; cout << "[13] Menu pricipal"<<endl; cout << "__________________________" << endl; cout << "Seleccione una opcion "; cin>>opcion4; switch(opcion4); { case 12: Menu5: { case 6: { system ("cls"); archivo = fopen("registro.dat","r"); fscanf(archivo, "%s", regisc); while(!feof(archivo)) { cout << regisc <<endl; fscanf(archivo, "%s", regisc); } fclose(archivo); cout<< "Desea Realizar otra operacion?s/n" <<endl; cin>> respuesta; if (respuesta == 's' || respuesta == 'S') {goto Menu3; }else{ system ("cls"); cout << "Adios, nos vemos luego" <<endl; return 0; } } case 13: { goto Menu3; } } } } }while(consulta=true); break; [u][/u]case 4: system("cls"); ifstream salida; salida.open("registro.dat",ios::in); ofstream entrada; entrada.open("temp.dat",ios::out); if(salida.fail()){ cout<<"hubo un error al abrir el archivo registro.dat"; getch(); } else{ cout<<"Introduzca el codigo de registro"; cin>>auxcodip; salida>>codip; while(!salida.eof()){ salida>>regisc>>fechav>>tic>>clientep>>pagop; if(strcmp(auxcodip,codip)==0){ cout<<"el registro se ha eliminado"; getch(); } else{ entrada<<codip<<" "<<regisc<<" "<<fechav<<" "<<tic<<" "<<clientep<<" "<<pagop<<endl; } salida>>codip; } entrada.close(); salida.close(); remove("registro.dat"); rename("temp.dat","registro.dat"); } break; while (opcion=true); } } while(opcion=true); { } }
Mod: Los códigos deben ir en etiquetas GeSHi