



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Código del ejercicio sobre personas del tema herencia
Tipo: Ejercicios
1 / 7
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
Rocha Angeles Aleeza Dayte Herencia Personas #include
: nombre(nombre), edad(edad), sexo(sexo), peso(0.0), altura(0.0) { generarINE(); } Persona(string nombre, int edad, char sexo, float peso, float altura) : nombre(nombre), edad(edad), sexo(sexo), peso(peso), altura(altura) { generarINE(); } int calcularIMC() { if (altura <= 0) return - 1; float imc = peso / (altura * altura); if (imc < 20) return - 1; else if (imc >= 20 && imc <= 25) return 0; else return 1; } bool esMayorDeEdad() { return edad >= 18; } void comprobarSexo(char nuevoSexo) { if (nuevoSexo == 'H' || nuevoSexo == 'M') sexo = nuevoSexo; else sexo = 'H'; }
float calcularSueldo() { return horasTrabajadas * pagoPorHora; } void imprimir() { Persona::imprimir(); cout << "Cargo: " << cargo << endl; cout << "Departamento: " << departamento << endl; cout << "Horas trabajadas: " << horasTrabajadas << endl; cout << "Pago por hora: " << pagoPorHora << endl; cout << "Sueldo: " << calcularSueldo() << endl; } }; class Estudiante : public Persona { private: string colegio; int semestre; public: Estudiante(string nombre, int edad, char sexo, string colegio, int semestre) : Persona(nombre, edad, sexo), colegio(colegio), semestre(semestre) {} void imprimir() { Persona::imprimir(); cout << "Colegio: " << colegio << endl; cout << "Semestre: " << semestre << endl; }
void imprimirRecomendacion(Persona& persona, int imc) { if (imc == - 1) cout << "Debe asistir con el nutriólogo para una dieta balanceada." << endl; else if (imc == 1) cout << "Debe iniciar un programa de entrenamiento." << endl; else cout << "IMC en rango saludable." << endl; } int main() { srand(time(0)); string nombre, cargo, departamento, colegio; int edad, horasTrabajadas, semestre; char sexo; float peso, altura, pagoPorHora; cout << "Ingrese nombre: "; cin >> nombre; cout << "Ingrese edad: "; cin >> edad; cout << "Ingrese sexo (H/M): "; cin >> sexo; cout << "Ingrese peso (kg): "; cin >> peso; cout << "Ingrese altura (m): "; cin >> altura;
cout << "Empleado:" << endl; empleado1.imprimir(); imprimirRecomendacion(empleado1, empleado1.calcularIMC()); cout << "Mayor de edad: " << (empleado1.esMayorDeEdad()? "Sí" : "No") << endl; cout << "Estudiante:" << endl; estudiante1.imprimir(); imprimirRecomendacion(estudiante1, estudiante1.calcularIMC()); cout << "Mayor de edad: " << (estudiante1.esMayorDeEdad()? "Sí" : "No") << endl; return 0; }