Vi todos los videos y aun no consigo que los datos se guarden, ya no se que hacer con este codigo...
talves usted que es mas entendido me pueda ayudar, esa escritura en archivos es la que no me deja armar el resto de opciones (mostrar, buscar, eliminar)..
talves usted que es mas entendido me pueda ayudar, esa escritura en archivos es la que no me deja armar el resto de opciones (mostrar, buscar, eliminar)..
Citar#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
int tecla, tecla2, tecla3;
typedef struct
{
char apellido1[15];
char apellido2[15];
char nombre1[15];
char nombre2[15];
char cedula[10];
}identidad;
typedef struct
{
char convencional[9];
char celular[10];
char correo[50];
}contacto;
typedef struct
{
char ciudad[20];
char sector[20];
char calle1[20];
char calle2[20];
char ncasa;
}direccion;
typedef struct
{
identidad i;
contacto c;
direccion d;
}persona;
typedef struct
{
char nom_gym[20];
char convencional[9];
char celular[11];
char correo[50];
direccion d;
char ngym;
}gym;
class cliente
{
private:
persona cli;
public:
cliente();
void ingreso_identidad(identidad g1);
void ingreso_contacto(contacto g2);
void ingreso_direccion(direccion g3);
friend void ingreso_per(cliente &g4);
void mostrar_identidad(identidad g1);
void mostrar_contacto(contacto g2);
void mostrar_direccion(direccion g3);
friend void mostrar_cli(cliente g4);
~cliente();
}; cliente::cliente(){}
class empleado
{
private:
persona emp;
public:
empleado();
void ingreso_identidad(identidad g1);
void ingreso_contacto(contacto g2);
void ingreso_direccion(direccion g3);
friend void ingreso_per(empleado &g4);
void mostrar_identidad(identidad g1);
void mostrar_contacto(contacto g2);
void mostrar_direccion(direccion g3);
friend void mostrar_emp(empleado g4);
~empleado();
}; empleado::empleado(){}
void cliente::ingreso_identidad(identidad g1)
{
cout<<"PRIMER APELLIDO :";gets(g1.apellido1);
cout<<"SEGUNDO APELLIDO :";gets(g1.apellido2);
cout<<"PRIMER NOMBRE :";gets(g1.nombre1);
cout<<"SEGUNDO NOMBRE :";gets(g1.nombre2);
cout<<"CEDULA :";gets(g1.cedula);
}
void cliente::ingreso_contacto(contacto g2)
{cout<<"CONVENCIONAL : ";gets(g2.convencional);
cout<<"CELULAR : ";gets(g2.celular);
cout<<"EMAIL : ";gets(g2.correo);}
void cliente::ingreso_direccion(direccion g3)
{
cout<<"CIUDAD : ";gets(g3.ciudad);
cout<<"SECTOR : ";gets(g3.sector);
cout<<"CALLE PRINCIPAL : ";gets(g3.calle1);
cout<<"CALLE INTERSECCION: ";gets(g3.calle2);
cout<<"NUMERO DE CASA : ";cin>>g3.ncasa;
}
void ingreso_per(cliente &g4)
{
g4.ingreso_identidad(g4.cli.i);
g4.ingreso_contacto(g4.cli.c);
g4.ingreso_direccion(g4.cli.d);
}
cliente::~cliente(){}
void empleado::ingreso_identidad(identidad g1)
{
cout<<"PRIMER APELLIDO : ";gets(g1.apellido1);
cout<<"SEGUNDO APELLIDO : ";gets(g1.apellido2);
cout<<"PRIMER NOMBRE : ";gets(g1.nombre1);
cout<<"SEGUNDO NOMBRE : ";gets(g1.nombre2);
cout<<"CEDULA : ";gets(g1.cedula);}
void empleado::ingreso_contacto(contacto g2)
{
cout<<"CONVENCIONAL : ";gets(g2.convencional);
cout<<"CELULAR : ";gets(g2.celular);
cout<<"EMAIL : ";gets(g2.correo);}
void empleado::ingreso_direccion(direccion g3)
{
cout<<"CIUDAD : ";gets(g3.ciudad);
cout<<"SECTOR : ";gets(g3.sector);
cout<<"CALLE PRINCIPAL : ";gets(g3.calle1);
cout<<"CALLE INTERSECCION: ";gets(g3.calle2);
cout<<"NUMERO DE CASA : ";cin>>g3.ncasa;
}
void ingreso_per(empleado &g4)
{
g4.ingreso_identidad(g4.emp.i);
g4.ingreso_contacto(g4.emp.c);
g4.ingreso_direccion(g4.emp.d);
}
empleado::~empleado(){}
//Funciones para Mostrar
void mostrar_identidad(identidad g1){
cout<<"PRIMER APELLIDO :\n";cout<<g1.apellido1;
cout<<"SEGUNDO APELLIDO :\n";cout<<g1.apellido2;
cout<<"PRIMER NOMBRE :\n";cout<<g1.nombre1;
cout<<"SEGUNDO NOMBRE :\n";cout<<g1.nombre2;
cout<<"CEDULA :\n";cout<<g1.cedula;}
void mostrar_contacto(contacto g2){
cout<<"CONVENCIONAL : ";
cout<<g2.convencional;
cout<<"CELULAR : ";
cout<<g2.celular;
cout<<"EMAIL : ";cout<<g2.correo;
}
void mostrar_direccion(direccion g3){
cout<<"CIUDAD : ";cout<<g3.ciudad;
cout<<"SECTOR : ";cout<<g3.sector;
cout<<"CALLE PRINCIPAL : ";cout<<g3.calle1;
cout<<"CALLE INTERSECCION: ";cout<<g3.calle2;
cout<<"NUMERO DE CASA : ";cout<<g3.ncasa;
}
void mostrar_cli(cliente g4){
mostrar_identidad(g4.cli.i);
mostrar_contacto(g4.cli.c);
mostrar_direccion(g4.cli.d);
}
void mostrar_emp(empleado g4){
mostrar_identidad(g4.emp.i);
mostrar_contacto(g4.emp.c);
mostrar_direccion(g4.emp.d);
}
void borrar_datos(){
gotoxy(1,4);cout<<" ";
gotoxy(1,5);cout<<" ";
gotoxy(1,6);cout<<" ";
gotoxy(1,7);cout<<" ";
gotoxy(1,8);cout<<" ";
gotoxy(1,9);cout<<" ";
gotoxy(1,10);cout<<" ";
gotoxy(1,11);cout<<" ";
gotoxy(1,12);cout<<" ";
gotoxy(1,13);cout<<" ";
gotoxy(1,14);cout<<" ";
gotoxy(1,15);cout<<" ";
gotoxy(1,16);cout<<" ";
gotoxy(1,17);cout<<" ";
gotoxy(1,18);cout<<" ";
gotoxy(1,19);cout<<" ";
gotoxy(1,20);cout<<" ";
gotoxy(1,21);cout<<" ";
gotoxy(1,22);cout<<" ";
gotoxy(1,23);cout<<" ";
gotoxy(1,24);cout<<" ";
gotoxy(1,25);cout<<" ";
gotoxy(1,26);cout<<" ";
gotoxy(1,27);cout<<" ";
gotoxy(1,28);cout<<" ";
gotoxy(1,29);cout<<" ";
}
void gym_mostrar(gym &v){
clrscr();
cout<<"\t"<<v.nom_gym<<endl;
cout<<"\nDireccion:\n"<<endl;
cout<<v.d.ciudad<<" - "<<v.d.sector<<endl;
cout<<v.d.calle1<<" y "<<v.d.calle2<<"No. "<<v.d.ncasa<<endl;
cout<<"\nContacto:\n"<<endl;
cout<<"Telefono: "<<v.convencional<<endl;
cout<<"Celular: "<<v.celular<<endl;
cout<<"Email: "<<v.correo<<endl;
}
void gym_salir(gym &v){
clrscr();
cout<<"\t"<<v.nom_gym<<endl;
cout<<"\nDireccion:\n"<<endl;
cout<<v.d.ciudad<<" - "<<v.d.sector<<endl;
cout<<v.d.calle1<<" y "<<v.d.calle2<<"No. "<<v.d.ncasa<<endl;
cout<<"\nContacto:\n"<<endl;
cout<<"Telefono: "<<v.convencional<<endl;
cout<<"Celular: "<<v.celular<<endl;
cout<<"Email: "<<v.correo<<endl;
cout<<"\n\nPulse una tecla para Salir...";
}
void main()
{ FILE *archivo;
gym g;
cliente c;
empleado e;
strcpy(g.nom_gym," TempleGYM") ;
strcpy(g.convencional,"052563549" ) ;
strcpy(g.celular,"0967004356") ;
strcpy(g.correo,"templegym@mail.com" ) ;
strcpy(g.d.ciudad,"Portoviejo");
strcpy(g.d.sector,"Los Bosques" ) ;
strcpy(g.d.calle1,"Av Manabi" );
strcpy(g.d.calle2,"Tennis Club ");
system("cls");
//MENU
char menu[5][15]={"Registrar","Mostrar","Buscar","Eliminar","Salir"};
int tecla,col=2,i,indice=0;
gym_mostrar(g);
cout<<"\nPresione una Tecla para continuar...";
getch();
clrscr();
for (i=0;i<5;i++){
gotoxy(col,2);cprintf("%s",menu);
col+=15;}
col=2;i=1;
do{
do{_setcursortype(_NOCURSOR);
textbackground(6);
gotoxy(col,2);cprintf("%s",menu[indice]);
tecla=getch();
}while(tecla!=77 && tecla != 75 && tecla!=13);
textbackground(0);
gotoxy(col,2);cprintf("%s",menu[indice]);
switch(tecla){
case 77: if (indice==4){col=2;indice=0;}
else {col+=15;indice++;}
break;
case 75: if (indice==0){col=62;indice=4;}
else {col-=15;indice--;}
break;
case 13: _setcursortype(_NORMALCURSOR);
if (indice==0){
gotoxy(1,4);
cout<<"Presione <E> si desea ingresar un empleado o <C> si desea ingresar un cliente"<<endl;
tecla2=getch();
switch(tecla2){
case 67:{
if(archivo){
ingreso_per(c);
archivo = fopen("Clientes.bin","w");
fwrite(&c,sizeof(cliente),1,archivo);
fclose(archivo);}
cout<<"\nPulse una tecla para continuar";getch();borrar_datos();};
break;
case 99:{if(archivo){
ingreso_per(c);
archivo = fopen("Clientes.bin","w");
fwrite(&c,sizeof(cliente),1,archivo);
fclose(archivo);}
cout<<"\nPulse una tecla para continuar";getch();borrar_datos();};
break;
case 69:{
if(archivo){
ingreso_per(e);
archivo = fopen("Empleados.bin","w");
fwrite(&e,sizeof(empleado),1,archivo);
fclose(archivo);}
cout<<"\nPulse una tecla para continuar";getch();borrar_datos();};
break;
case 101:{if(archivo){
ingreso_per(e);
archivo = fopen("Empleados.bin","w");
fwrite(&e,sizeof(empleado),1,archivo);
fclose(archivo);}
cout<<"\nPulse una tecla para continuar";getch();borrar_datos();};
break;
default:{cout<<"Opcion incorrecta.";getch(); gym_mostrar(g);getch();clrscr();}
};}
if (indice==1)
{
gotoxy(1,4);
cout<<"Presione <E> si desea mostrar a los empleados o <C> si desea mostrar a los clientes"<<endl;
tecla3=getch();
switch(tecla3){
case 67:
{
archivo = fopen("Clientes.bin","r");
fread(&c,sizeof(cliente),1,archivo);
mostrar_cli(c);
getch();
fclose(archivo);cout<<"\nPulse una tecla para continuar";getch();borrar_datos();
};
break;
case 99:
{
archivo = fopen("Clientes.bin","r");
fread(&c,sizeof(cliente),1,archivo);
mostrar_cli(c);
getch();
fclose(archivo);cout<<"\nPulse una tecla para continuar";getch();borrar_datos();
};
break;
case 69:
{
archivo = fopen("Empleados.bin","r");
fread(&e,sizeof(empleado),1,archivo);
mostrar_emp(e);
getch();
fclose(archivo);cout<<"\nPulse una tecla para continuar";getch();borrar_datos();
};
break;
case 101:
{
archivo = fopen("Empleados.bin","r");
fread(&e,sizeof(empleado),1,archivo);
mostrar_emp(e);
getch();
fclose(archivo);cout<<"\nPulse una tecla para continuar";getch();borrar_datos();
}
};
}
if (indice==2)
{
gotoxy(1,4);
cout<<"En Construccion";cout<<"\nPulse una tecla para continuar";getch();borrar_datos();
}
if (indice==3)
{
gotoxy(1,4);
cout<<"En Construccion";cout<<"\nPulse una tecla para continuar";getch();borrar_datos();
}
if (indice==4){gym_salir(g); getch();i=0;
}
}
}while(i);
}