Subido por Jesus elias joaquin espejel

CLASE EMPLEADO

Anuncio
CLASE EMPLEADO
(Herencia y Polimorfismo)
#include <iostream>
#include <stdlib.h>
using namespace std;
class Empleado
{
private:
int _intHorasTrabajadas;
double _dblSueldoPorHora;
public:
Empleado(int, double);
void HorasTrabajadas();
void SueldoPorHora();
//metodos set
void set_intHorasTrabajadas(int HorasTrabajadas)
{
_intHorasTrabajadas = HorasTrabajadas;
}
void set_dblSueldoPorHora(double SueldoPorHora)
{
_dblSueldoPorHora = SueldoPorHora;
}
//constructores con get
int get_intHorasTrabajadas()
{
return _intHorasTrabajadas;
}
double get_dblSueldoPorHora()
{
return _dblSueldoPorHora;
}
virtual void CalcularSalario();
};
//clases
class EmpleadoSinHorasExtras : public Empleado
{
private:
public:
EmpleadoSinHorasExtras(int,double);
void CalcularSalario();
};
class EmpleadoConHorasExtras : public Empleado
{
private:
public:
EmpleadoConHorasExtras(int,double);
void CalcularSalario();
};
class EmpleadoConHorasTriples : public Empleado
{
private:
public:
EmpleadoConHorasTriples(int,double);
void CalcularSalario();
};
//Constructores
Empleado::Empleado(int intHorasTrabajadas, double dblSueldoPorHora)
{
_intHorasTrabajadas = intHorasTrabajadas;
_dblSueldoPorHora = dblSueldoPorHora;
}
EmpleadoSinHorasExtras::EmpleadoSinHorasExtras(int intHorasTrabajadas, double
dblSueldoPorHora) : Empleado(intHorasTrabajadas, dblSueldoPorHora)
{
}
EmpleadoConHorasExtras::EmpleadoConHorasExtras(int intHorasTrabajadas, double
dblSueldoPorHora) : Empleado(intHorasTrabajadas, dblSueldoPorHora)
{
}
EmpleadoConHorasTriples::EmpleadoConHorasTriples(int intHorasTrabajadas, double
dblSueldoPorHora) : Empleado(intHorasTrabajadas, dblSueldoPorHora)
{
}
//Metodo CalcularSalario
void Empleado::CalcularSalario()
{
int TotalSueldo;
TotalSueldo=_intHorasTrabajadas*_dblSueldoPorHora;
cout<<"$"<<TotalSueldo<<endl;
}
void EmpleadoSinHorasExtras::CalcularSalario()
{
cout<<"*****************************"<<endl;
cout<<" SALARIOS DE EMPLEADOS"<<endl;
cout<<"*****************************"<<endl;
cout<<"El salario sin horas extras es: "<<endl;
Empleado::CalcularSalario();
}
void EmpleadoConHorasExtras::CalcularSalario()
{
cout<<"******************************"<<endl;
cout<<"El salario con horas extras es: "<<endl;
Empleado::CalcularSalario();
cout<<"******************************"<<endl;
}
void EmpleadoConHorasTriples::CalcularSalario()
{
cout<<"El salario con horas triples es: "<<endl;
Empleado::CalcularSalario();
cout<<"******************************"<<endl;
}
int main()
{
Empleado *empleados[2];
empleados[0] = new EmpleadoSinHorasExtras(24,25);
empleados[1] = new EmpleadoConHorasExtras(15,50);
empleados[2] = new EmpleadoConHorasTriples(17,75);
empleados[0]->CalcularSalario();
empleados[1]->CalcularSalario();
empleados[2]->CalcularSalario();
system("pause");
return 0;
}
CAPTURAS
Descargar