// Laboratorio # 2
// Nombre y numero de cuenta: Anderson Leon, #32251109
// Avance de Lab ejercicios del 1 al 15
#include <iostream>
#include <string>
#include <iomanip>
//using namespace std;
using std::cout;
using std::cin;
using std::string;
using std::endl;
using std::setprecision;
using std::setw;
using std::fixed;
class MAESTRO {
//clase para control de citas
// 11.
private:
int numero;
string docente;
double sueldo;
bool tutor;
int estudiantes;
int inP1, inP2, inP3, inP4;
double asistencias;
double sueldoAnterior;
double porcentajeAsistencias;
// 15.
int edad = 18;
// 17.
public:
MAESTRO() { // constructor sin parametros
// 4.
// std::cout << "Maestro creado sin datos!" << '\n';
}
//MAESTRO(int minumero = 0, string midocente = "Maestro ABC", double misueldo =
8000.0, bool mitutor = true, int alumnos = 1) {
public:
MAESTRO(int minumero , string midocente , double misueldo , bool mitutor, int
alumnos) {
numero = minumero; //
docente = midocente;
sueldo = misueldo;
tutor = mitutor;
estudiantes = alumnos;
edad = 18;
}
void getDatos() {
cout << endl ;
cout << "Numero de Docente \t" << numero << endl;
cout << "Docente \t" << docente << endl;
cout << "Disponible para ser Tutor \t" << tutor << endl;
cout << "Sueldo Base \t" << sueldo << endl;
cout << "Estudiantes asignados \t" << estudiantes << endl;
std::cout << "Edad de docente \t" << edad << '\n';
}
// getters y setters
void setNumero(int nuevoNumero) {
numero = nuevoNumero;
}
void setSueldo(double nuevoValor) {
sueldo = nuevoValor;
}
void setNombreDocente(string nuevoDocente) {
docente = nuevoDocente;
}
int getNumero() {
return numero;
}
double getSueldo() {
return sueldo;
}
string getDocente(){
return docente;
}
void setTutor(bool soyTutor){
tutor = soyTutor;
}
bool getTutor() {
return tutor;
}
void IncrementarSueldo() {
sueldoAnterior = sueldo;
sueldo = sueldo * 1.1;
cout << " El sueldo del Maestro " << docente << " paso de Lps. " <<
sueldoAnterior << " a Lps." << sueldo << endl;
}
void IncrementarSueldo(double incremento){
// 5.
std::cout << "Sueldo Actual: "<< sueldo << '\n';
sueldo += incremento;
std::cout << "Sueldo Actualizado: "<< sueldo << '\n';
}
void OtorgarDescuento3a() {
cout << endl << "Este maestro tiene derecho a descuento por la
tercera edad! \n";
};
int getEstudiantes() {
// 8.
return estudiantes;
}
void setEstudiantes(int nuevoEstudiantes){
// 8.
estudiantes = nuevoEstudiantes;
}
// 9.
void obtenerInformacion(){
cout << endl;
cout << "Numero de Docente \t" << getNumero() << endl;
cout << "Sueldo del Docente \t" << getSueldo() << endl;
cout << "Nombre de Docente \t" << getDocente() << endl;
cout << "Disponibilidad de tutor \t" << getTutor() << endl;
cout << "Estudiantes asignados \t" << getEstudiantes() << endl;
cout << "Edad del docente \t" << getEdad() << endl;
cout << endl;
}
/*
//Uniendo el paso 12 con el 13, creando el control de asistencia en un
metodo de set y get
void setCalcularAsistencias(int inasistencia1, int inasistencia2, int
inasistencia3, int inasistencia4){
//calculando el porcentaje de inasistencias
double diasClasesAnual = 200.0;
int totalInasistencias = inasistencia1 + inasistencia2 + inasistencia3 +
inasistencia4;
porcentajeAsistencias = 100.0 -
(static_cast<double>(totalInasistencias) / diasClasesAnual * 100.0);
}
double getCalcularAsistencias(){
return porcentajeAsistencias;
}
*/
//12
void calcularAsistencias(int totalAsistencias){
//calculando el porcentaje de inasistencias
double diasClasesAnual = 200.0;
int totalInasistencias = totalAsistencias;
porcentajeAsistencias = 100.0 -
(static_cast<double>(totalInasistencias) / diasClasesAnual * 100.0);
}
//13
void setAsistencias(int inasistencia1, int inasistencia2, int
inasistencia3, int inasistencia4){
int totalAsistencias = inasistencia1 + inasistencia2 + inasistencia3 +
inasistencia4;
calcularAsistencias(totalAsistencias);
}
double getCalcularAsistencias(){
return porcentajeAsistencias;
}
//16
void setEdad(int edadDocente){
if(edadDocente < 60){
edad = edadDocente;
getEdad();
}else{
cout << "La edad del docente es: \t"<< edad << "\n";
OtorgarDescuento3a();
}
}
int getEdad(){
return edad;
}
};
// fin de la clase
int main() {
cout << fixed << setprecision(2) << setw(10);
// 3.
//MAESTRO jirafales(1,"Jirafales",15000,false,30);
// 6.
MAESTRO dumbledore;
MAESTRO jirafales;
[Link](1);
[Link]("Albus Dumbledore");
[Link](false);
[Link](150000);
[Link](15);
//14
//ordena los parametros en orden de 1ero a 4to parcial
[Link](1,3,4,5);
cout << endl;
cout << "Numero de Docente \t" << [Link]()
<< endl;
cout << "Sueldo del Docente \t" << [Link]()
<< endl;
cout << "Nombre de Docente \t" << [Link]()
<< endl;
cout << "Disponibilidad de tutor \t" << [Link]()
<< endl;
cout << "Estudiantes asignados \t" << [Link]()
<< endl;
cout << "Porcentaje de Asistencias\t" << [Link]()
<< endl;
[Link](45);
// 7.
//[Link]();
//[Link]();
return 0;
}