Untitled
unknown
plain_text
21 days ago
5.8 kB
3
Indexable
#include <iostream> #include <locale.h> #include <iomanip> using namespace std; class Empleado { private: int ID_Empleado, HorasMax; float TasaSal; public: Empleado(int = 0, float = 0.0, int = 0); void SetCambiar(float, int); void MostrarDatos(); void IntroducirDatos(); void modificarEmpleado(); bool eliminarEmpleado(int id); int getId() const; }; Empleado::Empleado(int ID, float TasaSala, int HorasMaxi) { ID_Empleado = ID; TasaSal = TasaSala; HorasMax = HorasMaxi; } void Empleado::IntroducirDatos() { cout << "Introduzca el ID del empleado: "; cin >> ID_Empleado; cout << "Introduzca la tasa salarial del empleado: "; cin >> TasaSal; cout << "Introduzca el n�mero m�ximo de horas que trabaja el empleado cada semana: "; cin >> HorasMax; } void Empleado::SetCambiar(float nuevaTasa, int nuevasHoras) { TasaSal = nuevaTasa; HorasMax = nuevasHoras; } void Empleado::MostrarDatos() { cout<<".----------------------------.\n" <<"| Datos del empleado |\n" <<".----------------------------.\n" <<" \n\n" <<"ID: " << ID_Empleado <<endl <<"Tasa salarial: "<<fixed<<setprecision(2)<<TasaSal<<endl <<"N�mero m�ximo de horas: " << HorasMax << endl; } void Empleado::modificarEmpleado() { float nuevaTasa; int nuevasHoras; cout << "Ingrese la nueva tasa salarial: "; cin >> nuevaTasa; cout << "Ingrese el nuevo n�mero de horas m�ximas: "; cin >> nuevasHoras; SetCambiar(nuevaTasa, nuevasHoras); } bool Empleado::eliminarEmpleado(int id) { if (getId() == id) { ID_Empleado = 0; TasaSal = 0.0; HorasMax = 0; return true; } return false; } int Empleado::getId() const { return ID_Empleado; } void mostrarDatosEmpleado(Empleado& empleado1, Empleado& empleado2, Empleado& empleado3) { int idMostrar; cout << "�De cu�l empleado est� interesado en ver sus datos? (1, 2 o 3): "; cin >> idMostrar; if (idMostrar == 1 && empleado1.getId() != 0) { empleado1.MostrarDatos(); } else if (idMostrar == 2 && empleado2.getId() != 0) { empleado2.MostrarDatos(); } else if (idMostrar == 3 && empleado3.getId() != 0) { empleado3.MostrarDatos(); } else { cout << "Empleado no encontrado o vac�o.\n"; } } int main() { setlocale(LC_CTYPE, "spanish"); Empleado empleado1, empleado2, empleado3; int opcion; bool continuar = true; cout<< ".------------------------------------------------------------------------------.\n" << "| �Bienvenido! Este programa le permite almacenar los datos de sus empleados |\n" << "'------------------------------------------------------------------------------'\n"<< endl; while (continuar) { cout << ".------------------------------------------.\n" << "| MEN� |\n" << "| Elija una opci�n dependiendo del n�mero |\n" << ".------------------------------------------.\n" << "|[1]. Agregar empleado. |\n" << "|[2]. Modificar datos del empleado. |\n" << "|[3]. Eliminar empleado. |\n" << "|[4]. Mostrar datos del empleado. |\n" << "|[5]. Salir. |\n" << ".------------------------------------------.\n" << " \n\n" << " Ingrese su opci�n: "; cin>>opcion; switch (opcion) { case 1: { if (empleado1.getId() == 0) { empleado1.IntroducirDatos(); } else if (empleado2.getId() == 0) { empleado2.IntroducirDatos(); } else if (empleado3.getId() == 0) { empleado3.IntroducirDatos(); } else { cout << "No se pueden agregar m�s empleados. L�mite alcanzado.\n"; } break; } case 2: { int idModificar; cout << "Ingrese el ID del empleado a modificar: "; cin >> idModificar; if (empleado1.getId() != 0 && empleado1.getId() == idModificar) { empleado1.modificarEmpleado(); } else if (empleado2.getId() != 0 && empleado2.getId() == idModificar) { empleado2.modificarEmpleado(); } else if (empleado3.getId() != 0 && empleado3.getId() == idModificar) { empleado3.modificarEmpleado(); } else { cout << "Empleado no encontrado.\n"; } break; } case 3: { int idEliminar; cout << "Ingrese el ID del empleado a eliminar: "; cin >> idEliminar; if (empleado1.getId() != 0 && empleado1.eliminarEmpleado(idEliminar)) { } else if (empleado2.getId() != 0 && empleado2.eliminarEmpleado(idEliminar)) { } else if (empleado3.getId() != 0 && empleado3.eliminarEmpleado(idEliminar)) { } else { cout << "Empleado no encontrado.\n"; } break; } case 4: { mostrarDatosEmpleado(empleado1, empleado2, empleado3); break; } case 5: cout << "Saliendo del programa...\n"; continuar = false; break; default: cout << "Opci�n no v�lida. Intente de nuevo.\n"; } } return 0; }
Editor is loading...
Leave a Comment