| Ver tema anterior :: Ver siguiente tema | | Autor | Mensaje |
|---|
lalodark
Registrado: 19 Jun 2006 Mensajes: 4
| Publicado: 20/06/2006 8:27 am | | | Título: Ayuda con herencia |
| Hola espero ke alguien me pueda ayudar tengo un programa ke esta funcionando bien pero mi profesor kiere ke le hagregue herencia y polimorfismo si alguien me puediera ayudar seria grandioso aki esta el programa:
#include <iostream.h> #include <stdlib.h> #include <fstream.h>
class General{
void DatosGeneral(); void DatosAcademicos(); void DatosPersonales();
protected:
char nombre[15]; char apellidop[15]; char apellidom[15]; char CURP[20]; char RFC[13]; int carrera; int terminado; int puopri; char school[15]; float promSecu; float promBach; char Calle[100]; char Colonia[50]; char EDO[20]; char CITY[25]; int sex; int edad; int edocivil; char fecha[50]; int Nacionalidad; char Ocupacion[50]; int zip; int TelefonoC; int TelefonoO; int TelefonoCel; char email[50];
public:
void ObtenerDatos () {
carrera = 0; cout<<"Introduce tu nombre completo"<<endl<<endl <<"Nombre : ";cin>>nombre; cout<<"\nApellido Paterno : ";cin>>apellidop; cout<<"\nApellido Materno : ";cin>>apellidom; cout<<"\nCURP : ";cin>>CURP; cout<<"\nRFC : ";cin>>RFC;
do { cout<<"\nCarrera : "<<endl<<endl<<"1) Sistemas Computacionales"<<endl <<"2) Electronica"<<endl <<"3) Informatica"<<endl; cout<<"\n\nIntroduce tu opcion : ";cin>>carrera; switch (carrera){ case 1: cout<<"Haz elegido Sistemas"<<endl; break; case 2: cout<<"Haz elegido Electronica"<<endl; break; case 3: cout<<"Haz elegido Informatica"<<endl; break; default: cout<<"Error Intenta todo el procedimiento de nuevo"; ObtenerDatos(); break; } }while (carrera > 3 || carrera < 1); } void ObtenerDatos2 () { puopri = -1; terminado = -1; do { cout<<"Terminaste el Bachillerato ?" <<"\n\n 1) No Terminado"<<endl <<"2) Terminado"<<endl<<endl <<"Ingresa tu opcion : "; cin>>terminado; switch (terminado) { case 1: cout<<"No terminaste"; break; case 2: cout<<"Terminaste"; break; default: cout<<"Error de sistema debes volver a empezar"; ObtenerDatos2(); break; } }while(terminado < 1 || terminado > 2); cout<<endl<<endl<<"Promedio de Secundaria : "; cin>>promSecu; cout<<endl<<"Promedio de Bachillerato : "; cin>>promBach; cout<<endl<<"Nombre de la Escuela de procedencia : "; cin>>school; do { cout<<"Tipo de Escuela ?" <<"\n\n1) Publica"<<endl <<"2) Privada"<<endl<<endl <<"Ingresa tu opcion : "; cin>>puopri; switch (puopri) { case 1: cout<<"Publica"; break; case 2: cout<<"Privada"; break; default: cout<<"Error de sistema debes volver a empezar"; ObtenerDatos2(); break; } }while(puopri < 1 || puopri > 2); cout<<endl<<endl<<"Calle : ";cin>>Calle; cout<<endl<<"Colonia : ";cin>>Colonia; cout<<endl<<"Estado : ";cin>>EDO; cout<<endl<<"Ciudad : ";cin>>CITY; } void ObtenerDatos3 () { sex = 0; edocivil = 0; Nacionalidad = 0; do{ cout<<endl<<endl<<"Sexo : "<<endl<<endl <<"1) Masculino"<<endl <<"2) Femenino"<<endl<<endl <<"Introduce tu opcion : ";cin>>sex; switch (sex){ case 1: cout<<"Masculino"; break; case 2: cout<<"Femenino"; break; default: cout<<"Error de Sistema Debes iniciar de nuevo"; ObtenerDatos3(); break; } }while(sex < 0 || sex > 2); cout<<"\nIngresa tu edad : "<<endl; cin>>edad; do { cout<<endl<<endl<<"Estado Civil"<<endl <<endl<<endl<<"1) Soltero"<<endl <<"2) Casado"<<endl<<endl<<"Introduce tu opcion : "; cin>>edocivil; switch(edocivil){ case 1: cout<<"Soltero :"<<endl; break; case 2: cout<<"Casado :"<<endl; break; default: cout<<"Error de Sistema inicia de nuevo"; ObtenerDatos3(); break; } }while(edocivil < 1 || edocivil > 2); cout<<"Fecha de Nacimiento dd/mm/aaaa :"; cin>>fecha; cout<<endl<<"Estado : "<<EDO; cout<<endl<<"Ciudad : "<<CITY; do { cout<<endl<<"Nacionalidad"<<endl<<endl <<"1) Argentino"<<endl <<"2) Aleman"<<endl <<"3) Mexicano"<<endl<<endl <<"Ingresa tu opcion : ";cin>>Nacionalidad; switch(Nacionalidad){ case 1: cout<<"Argentino"; break; case 2: cout<<"Aleman"; break; case 3: cout<<"Mexicano"; break; default: cout<<"Error de sistema debes volver a empezar"<<endl; ObtenerDatos3(); break; } }while(Nacionalidad < 1 || Nacionalidad > 3); cout<<endl<<endl<<"Ocupacion : "; cin>>Ocupacion; cout<<endl<<"Calle : ";cin>>Calle; cout<<endl<<"Colonia : ";cin>>Colonia; cout<<endl<<"Estado : ";cin>>EDO; cout<<endl<<"Ciudad : ";cin>>CITY; cout<<endl<<"Codigo Postal : ";cin>>zip; cout<<endl<<"Telefono de Casa : "; cin>>TelefonoC; cout<<endl<<"Telefono de Oficina : ";cin>>TelefonoO; cout<<endl<<"Telefono Celular : "; cin>>TelefonoCel; cout<<endl<<"e-mail : ";cin>>email; } }; void DatosGeneral(){ char opcion = 's'; do{ General intro; intro.ObtenerDatos(); ofstream file; file.open("archivo.dat", ios::app | ios::binary); file.write((char*)&intro, sizeof(intro)); file.close(); cout<<"\nDeseas continuar introduciendo datos ? (S/N): ";cin>>opcion; }while(opcion=='s' || opcion=='S'); DatosAcademicos(); } void DatosAcademicos(){ char opcion = 's'; do{ General intro; intro.ObtenerDatos2(); ofstream file; file.open("archivo.dat", ios::app | ios::binary); file.write((char*)&intro, sizeof(intro)); file.close(); cout<<"\nDeseas continuar introduciendo datos ? (S/N): ";cin>>opcion; }while(opcion=='s' || opcion=='S'); DatosPersonales(); } void DatosPersonales() { char opcion = 's'; do{ General intro; intro.ObtenerDatos3(); ofstream file; file.open("archivo.dat", ios::app | ios::binary); file.write((char*)&intro, sizeof(intro)); file.close(); cout<<"\nDeseas continuar introduciendo datos ? (S/N): ";cin>>opcion; }while(opcion=='s' || opcion=='S'); } int main () { DatosGeneral(); } |
| | Volver arriba | |  | cheroky
Registrado: 22 Sep 2005 Mensajes: 1372 Ubicación: En ecx esperando un call
| Publicado: 20/06/2006 11:57 am | | | Título: |
| Aunque tu programa gestione 'datos' no tiene nada que ver con BBDD que es el tema de esta seccion.
| ladodark escribió: | | mi profesor kiere ke le hagregue herencia y polimorfismo |
Bien, pero que quieres heredar y que quieres poliformar y como lo quieres? por que de ahi se puede heredar una clase nueva, desde una clase autobus_escolar hasta una clase ficha.
S2. |
| | Volver arriba | |  | Killrazor
Registrado: 24 Ene 2006 Mensajes: 1232 Ubicación: Barcelona
| Publicado: 21/06/2006 12:38 am | | | Título: |
| Si tu profesor ha dicho que heredes y polimorfes y eso es el programa que se te ocurre es que no has entendido nada (no te ofendas). La herencia se aplica en clases e implican las relaciones entre ellas. Pero tu solo has hehco una, asi que la herencia no tiene demasiado sentido. Lo que realmente te debia pedir tu profesor era un analisis de un problema y te aconsejaba usar herencia y polimorfismo. Si quieres pon el enunciado para que podamos ayudarte.
La herencia es un mecanismo donde tu creas una clase que contiene propiedades de otra (de la que hereda). El polimorfismo es un mecanismo por el cual una clase usa otra sin saber a priori su tipo. Solo sabe su tipo antecesor y por tanto existe un mecanismo de transformacion del tipo en tiempo de ejecucion (en vez del tradicional en tiempo de compilado) |
| | Volver arriba | |  | | |
| No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas
|
|
| |