El error es: "la variable "hrs" no esta declarada"
Código
#include <stdlib.h> #include <iostream> using namespace std; class persona { private: char nombre[30],sexo[3]; int edad; int hrs; public: friend class calculo; virtual void pide() { cout<<"\nNombre: "; cin>>nombre; cout<<"\nEdad: "; cin>>edad; cout<<"\nSexo: "; cin>>sexo; cout<<"\nHoras: "; cin>>hrs; } virtual void imprime() { cout<<"\nNombre: "<<nombre; cout<<"\nEdad: "<<edad; cout<<"\nSexo: "<<sexo; cout<<"\nHoras: "<<hrs; } } ; class calculo { private: persona p; public: void calculap() { cout<<"\nEl salario del profesor es: "<<hrs*600; } void calculal() { cout<<"\nEl salario del alumno es: "<<hrs*500; } } ; class profesor:public persona { char titulo[30]; public: void pide() { cout<<"\nTitulo: "; cin>>titulo; } void imprime() { cout<<"\nTitulo: "<<titulo<<endl; } } ; class alumno:public persona { char situacion[30]; public: void pide() { cout<<"\nSituacion academica: "; cin>>situacion; } void imprime() { cout<<"\nSituacion academica: "<<situacion<<endl; } } ; main() { int opc; persona *p1,*p2,*p3; persona o1; profesor o2; alumno o3; calculo o4; p1=&o1; p2=&o2; p3=&o3; cout<<"\nSalario a pagar"; cout<<"Elige: \n1.Profesor\n2.Alumno\n"; cin>>opc; if(opc==1) { cout<<"\nProfesor "; p1->pide(); p2->pide(); p1->imprime(); p2->imprime(); o4.calculap(); system("pause"); } if(opc==2) { cout<<"\nAlumno "; p1->pide(); p3->pide(); p1->imprime(); p3->imprime(); o4.calculal(); system("pause"); } }
· Los códigos deben ir en etiquetas GeSHi
· Los títulos deben ser descriptivos
>aquí las reglas del foro
-Engel Lex