0% encontró este documento útil (0 votos)
184 vistas14 páginas

Aplicación OO para Gestión de Empleados

Este documento presenta un ejercicio de programación orientada a objetos que modela una fábrica con empleados. Se propone crear clases para la fábrica, empleados, ventas y clientes, con operaciones como registrar, mostrar, buscar y eliminar empleados, y calcular la planilla total. Se incluyen diagramas de clases y fragmentos de código Java para implementar las clases y operaciones solicitadas.

Cargado por

jafet puyen
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
184 vistas14 páginas

Aplicación OO para Gestión de Empleados

Este documento presenta un ejercicio de programación orientada a objetos que modela una fábrica con empleados. Se propone crear clases para la fábrica, empleados, ventas y clientes, con operaciones como registrar, mostrar, buscar y eliminar empleados, y calcular la planilla total. Se incluyen diagramas de clases y fragmentos de código Java para implementar las clases y operaciones solicitadas.

Cargado por

jafet puyen
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

“Año de la universalización de la salud”

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS


Universidad del Perú, Decana de América
FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA

ESCUELA ACADÉMICA PROFESIONAL DE SISTEMAS

Laboratorio 4

ALGORÍTMICA Y PROGRAMACIÓN ORIENTADA A OBJETOS

INTEGRANTES

Arce Carhuamaca, Elías Ruben 19200159

Estrella Condor, Joshep Douglas 19200146

Gonza Santibañez, Pamela Sofia 19200017

Guzmán Nolasco, Enrique Eduardo 19200022

Herrera Yzaguirre, Leonardo Deivy 19200225 (Coordinador)

Puyen Huapaya, Jafet Raul 19200039

PROFESOR
Espinoza Domínguez, Robert Elías
Lima, Perú
2020
Ejercicio 4
Una fábrica compuesta de muchos empleados requiere una aplicación OO con operaciones
como mostrar, eliminar y determinar el monto total de planilla de sueldos. Véase el
programa y mejore creando las operaciones buscar empleado, eliminar un determina
empleado. Crear las clases Ventas y Clientes y relaciona con las demás clases. Complete los
diagramas con diagramas de diseño.

Principal

Fabrica
- empleados: Empleado
- nEmpl : entero
+ Fabrica() : nulo
+ redimensionarMas() : nulo
+ redimensionarMenos() : nulo
+ añadirEmpleado() : nulo
+ registrarEmpleado (): Empleado
Venta + mostrarEmpleados() : nulo
- nVenta: entero + buscarEmpleado() : nulo
+ eliminarEmpleado() : nulo
+ Venta(): nulo + planilla() : nulo
+ getNVenta() : entero + encabezado1() : nulo
+ setNVenta(entero): nulo + linea() : nulo

Cliente Empleado
- nombre: cadena - nombre: cadena
+ Cliente (): nulo - cod : entero
+ getNombre (): cadena - salario : real
+ setNombre(cadena): nulo + Empleado : nulo
+ getNombre() : Cadena
+ setNombre(cadena): nulo
+ getCod() : entero
+ setCod(entero) : nulo
+ getSalario() : real
+ setSalario(real) : nulo
+ toString() : cadena
Clase Fabrica public void añadirEmpleado(){
package Ejercicio4; int n;
import [Link]; n=[Link];
Empleado emp;
public class Fabrica { redimensionarMas();
private Empleado empleados[]; emp=registrarEmpleado();
private int nEmpl; empleados[n]=emp;
}
public Fabrica() {
empleados = new Empleado[0]; public Empleado registrarEmpleado(){
} String nom;
int cod;
public void redimensionarMas(){ double sueldo;
int n;
n=[Link]; Scanner entrada = new
n=n+1; Scanner([Link]);
Empleado emp[] = new Empleado[n]; Empleado emp = new Empleado();
for(int i=0; i<[Link]; i++){
emp[i]=empleados[i]; [Link](">> Empleado : ");
} nom=[Link]();
empleados=emp; [Link](nom);

} [Link](">> Codigo : ");


cod=[Link]();
public void redimensionarMenos(){ [Link](cod);
int n;
n=[Link]; [Link](">> Salario : ");
n=n-1; sueldo=[Link]();
Empleado emp[] = new Empleado[n]; [Link](sueldo);
for(int i=0; i<[Link]-1; i++){
emp[i]=empleados[i]; return emp;
}
empleados=emp; }
}
public void eliminarEmpleado(){
public void mostrarEmpleados(){ int cod;
if([Link]>0){ boolean existe=false;
encabezado1();
linea();
Scanner entrada = new Scanner([Link]);
for(int i=0; i<[Link];i++){
[Link](">>>Codigo de empleado a eliminar :
[Link](empleados[i]);
");
}
cod=[Link]();
}
else
for(int i=0;i<[Link];i++){
[Link]("***No hay
if(empleados[i].getCod()==cod){
empleados registrados");
}
if(i<[Link]){
for(int j=i; j<[Link]-1; j++){
public void buscarEmpleado(){
empleados[j]=empleados[j+1];
int cod;
}
boolean existe=false;
}
Scanner entrada = new
redimensionarMenos();
Scanner([Link]);
[Link]("\n\t***Empleado eliminado");
[Link](">>>Codigo de
existe=true;
empleado a buscar : ");
}
cod=[Link]();
}
if(existe!=true){
for(int i=0;i<[Link];i++){
[Link]("\n\t***Empleado no
if(empleados[i].getCod()==cod){
encontrado");
encabezado1();
}
linea();
}
[Link](empleados[i]);
[Link]("\n\t***Empleado
public void planilla(){
encontrado ");
double totSueldo=0;
existe=true;
}
} mostrarEmpleados();
if(existe!=true){ for(int i=0;i<[Link];i++){
[Link]("\n\t***Empleado totSueldo=totSueldo+empleados[i].getSalario();
no registrado"); }
}
}
linea(); Clase Principal
[Link]("TOTAL \t\t\t\t\t\t\t package Ejercicio4;
"+totSueldo); import [Link];
} public class Principal {
public void encabezado1(){ public static void main (String args[]){
[Link]("Codigo \t\t\t Fabrica empresa = new Fabrica();
Nombre\t\t\t Salario(S/)"); int opc;
Scanner entrada = new Scanner([Link]);
} do{
[Link]("\n\n\n\n\n\n\t\t\tMENU ");
public void linea(){ [Link]("1. Registrar Empleado ");
[Link]("========= [Link]("2. Mostrar Empleados");
=============== [Link]("3. Buscar Empleado");
============="); [Link]("4. Eliminar Empleado");
} [Link]("5. Planilla");
} [Link]("6. Salir");
[Link]("Opcion ===> ");
Clase Empleado
package Ejercicio4; opc=[Link]();
public class Empleado {
private String nombre; switch(opc){
private int cod; case 1: empresa.añadirEmpleado(); break;
private double salario; case 2: [Link](); break;
case 3: [Link](); break;
public Empleado() { case 4: [Link](); break;
} case 5: [Link](); break;
public String getNombre() {
return nombre; }
} }while(opc!=6);
public void setNombre(String nombre) {
[Link] = nombre; }
}
public int getCod() { }
return cod;
}
public void setCod(int cod) {
[Link] = cod;
}
public double getSalario() {
return salario;
}
public void setSalario(double salario) {
[Link] = salario;
}
public String toString(){
return
cod+"\t\t\t"+nombre+"\t\t\t"+salario;
}
}
Registro de Empleados:

Mostrar Empleados

Buscar Empleado
Eliminar Empleado

Plantilla
Ejercicio 5
Implementar las clases Fecha, PersonaX y TPersonaX, la clase Persona está asociada a las
clases String y Fecha y la clase TPersonaX muestra un ejemplo de la relación de uso de la
clase PersonaX.

DIAGRAMA DE CLASES (UML)

Código Fuente
Clase Fecha Clase PersonaX
public class Fecha {  public class PersonaX { 
    //Atributos      //Atributos 
    private int dd;      String nombre; 
    private int mm;      Fecha fNac; 
    private int aaaa;       
          //Métodos 
    //Métodos      public PersonaX() { 
    public Fecha() {           
        dd = 1;      } 
        mm = 1;       
        aaaa = 1997;      //Método  
    }      public void setDatos(String nombre, Fecha f)
      { 
    public Fecha(int dia, int mes, int anio) {      [Link] = nombre; 
    dd = dia;      fNac = f; 
    mm = mes;      } 
    aaaa = anio;   
    }      public String toString() { 
    public String toString() {      return nombre + " nacido el dia "
    return dd + "/" + mm + "/" +      aaaa;  + [Link](); 
    }       }  
}  } 

Clase TPeraonaX

public class TPersonaX { 
 
    public static void main(String[] args) { 
        //Creación de objetos 
        PersonaX p = new PersonaX(); 
        Fecha n = new Fecha(5,9,1946); 
         
        //Invocación de método 
        [Link]("Freddy Mercury", n); 
        [Link]([Link]+" "+"nacio el "+[Link]()); 
    }    

Resultado de la Ejecución del programa

Ejercicio 6
Analice el siguiente código lista y luego construya el diagrama de clase, sus relaciones e
implemente todas las operaciones básicas.
DIAGRAMA DE CLASES (UML)
Código Fuente
Clase Nodo Clase Liata

public class Nodo { public class Lista {


private String valor; static Scanner entrada = new
private Nodo siguiente; Scanner([Link]);
private Nodo cabeza;
public Nodo(String cadena) {
valor = cadena;
siguiente = null; //constructor de la clase "Lista"
} public Lista() {
cabeza = null;
//getters para obtener valores del atributo de tipo }
String "valor"
public String darValor() { public void incluir(String nValor) {
return (valor); Nodo aux = new Nodo(nValor);
} if (cabeza == null) {
//getters para obtener valores del atributo de tipo cabeza = aux;
objeto con nombre "siguiente" }
public Nodo darSiguiente() { else{
return (siguiente); Nodo aux2;
} aux2=cabeza;
public void insertarAContinuacion(Nodo while([Link]() !=
siguienteNodo){ null){
siguiente = siguienteNodo; aux2 = [Link]();
} }
}
[Link](aux);
}
}
public void imprimir() {
if(cabeza != null) {
Nodo aux3 = cabeza;
while(aux3 != null) {

[Link]([Link]());
aux3 = [Link]();
}
}
}
public void añadir(){
String cadena;
[Link]("Ingrese la
cadena a añadir: ");
cadena= [Link]();
Clase PruebaLista incluir(cadena);
}
public class PruebaLista {
private static Lista p = new Lista(); public void salir(){
public static void main(String[] args) { [Link]("Gracias por
menu(); usar el programa");
} }
}
public static void menu(){
Scanner entrada = new Scanner([Link]);
int opc;
char respuesta = 0;
//Lista p = new Lista();
do{
do{
[Link]("Ingrese la accion que desee realizar en la lista:");
[Link]("1.Añadir ");
[Link]("[Link]");
[Link]("[Link]");
[Link]("Opcion: ");
opc = [Link]();
}while(opc <1 || opc>3);
switch(opc){
case 1:p.añadir();
break;
case 2:[Link]();
break;
case 3:[Link]();
break;
}
if(opc<3){
[Link]("\nDesea realizar otra accion (s/n): ");
respuesta =[Link]().charAt(0);
[Link]("");
}
}while(respuesta == 's' || respuesta== 'S');
[Link]("Gracias por usar el programa");
}
}
Operaciones Implementadas (Añadir, Imprimir y Salir)

También podría gustarte