0% encontró este documento útil (0 votos)
22 vistas11 páginas

Ejercicio 4 Laboratorio

guía rápida de estudio sobre varios ejercicios propuestos en Java

Cargado por

Johan Padron
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)
22 vistas11 páginas

Ejercicio 4 Laboratorio

guía rápida de estudio sobre varios ejercicios propuestos en Java

Cargado por

Johan Padron
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

Ahora con el siguiente ejercicio

Realizar un programa en Java que tiene los siguientes datos de entrada:


cédula, apellido, nombre, año de ingreso, sexo y sueldo base. Calcular el
nuevo sueldo considerando:

 Si sexo es igual masculino y sueldo base es menor o igual a 75000 y


año de servicios es mayor a 7 recibirá un aumento del 50% sobre su
sueldo base, en caso contrario será del 40%

 Si sueldo base es menor o igual a 97500 y año de servicio es mayor a


5 y sexo es igual femenino recibirá un aumento del 60% sobre su sueldo
base, en caso contrario será 40%.

 Si el trabajador está afiliado a la caja de ahorro se le descuenta el 10%


sobre su sueldo base.

 Se descontará el seguro social obligatorio (SSO) que es 0,5% sobre su


sueldo base y el fondo de

Ahorro obligatorio para la vivienda (FAOV) que es 1% sobre su sueldo


base.

La empresa quiere generar el recibo de pago de sus trabajadores con los


siguientes datos: cédula, apellido, nombre, sexo, año de ingreso, sueldo
base, aumento, las deducciones (SSO, FAOV y Caja de Ahorro) y sueldo
neto.

 public abstract void calcularSalario();

 public abstract void calcularDedeciones();


 public abstract void mostrarNomina();

El programa debe tener también una clase concreta llamada


Trabajadores que es subclase de la clase Persona.

Recomendaciones Útiles:

 Escriba una clase abstracta llamada Persona que defina los miembros
mencionados y métodos que permitan acceder a las variables
(constructor, setter y getter).

 Crear una subclase de llamada Trabajadores. Estas clases deben ser


concretas, para esto deben implementar los métodos abstractos de la
superclase Persona.

Nota Ingresar por teclado la cantidad de empleado a procesar

Package ejerciciotrabajadores;

Import [Link];

Public abstract class Persona {

Private String cedula;

Private String apellido;

Private String nombre;

Private int anioIngreso;

Private char sexo;

Private float sueldoBase;


Private boolean afiliadoCajaAhorro;

// Constructor

Public Persona(String cedula, String apellido, String nombre, int


anioIngreso,

Char sexo, float sueldoBase, boolean afiliadoCajaAhorro) {

[Link] = cedula;

[Link] = apellido;

[Link] = nombre;

[Link] = anioIngreso;

[Link] = sexo;

[Link] = sueldoBase;

[Link] = afiliadoCajaAhorro;

// Constructor vacío

Public Persona() {

Public void leerDatos() {

[Link] = [Link](“Ingrese la cédula:”);

[Link] = [Link](“Ingrese el apellido:”);

[Link] = [Link](“Ingrese el nombre:”);

[Link] =
[Link]([Link](“Ingrese el año de
ingreso:”));

[Link] = [Link](“Ingrese el sexo


(M/F):”).charAt(0);
[Link] =
[Link]([Link](“Ingrese el sueldo
base:”));

[Link] = [Link](null,
“¿Está afiliado a la caja de ahorro?”,

“Caja de Ahorro”, JOptionPane.YES_NO_OPTION) ==


JOptionPane.YES_OPTION;

Public abstract void calcularSalario();

Public abstract void calcularDeducciones();

Public abstract void mostrarNomina();

// Setters y Getters

Public String getCedula() {

Return cedula;

Public void setCedula(String cedula) {

[Link] = cedula;

Public String getApellido() {

Return apellido;

Public void setApellido(String apellido) {

[Link] = apellido;

Public String getNombre() {

Return nombre;
}

Public void setNombre(String nombre) {

[Link] = nombre;

Public int getAnioIngreso() {

Return anioIngreso;

Public void setAnioIngreso(int anioIngreso) {

[Link] = anioIngreso;

Public char getSexo() {

Return sexo;

Public void setSexo(char sexo) {

[Link] = sexo;

Public float getSueldoBase() {

Return sueldoBase;

Public void setSueldoBase(float sueldoBase) {

[Link] = sueldoBase;

Public boolean isAfiliadoCajaAhorro() {

Return afiliadoCajaAhorro;

Public void setAfiliadoCajaAhorro(boolean afiliadoCajaAhorro) {

[Link] = afiliadoCajaAhorro;
}

Public int calcularAniosServicio() {

Return [Link]().getValue() – anioIngreso;

Package ejerciciotrabajadores;

Import [Link];

Public class Trabajador extends Persona {

Private float aumento;

Private float sso;

Private float faov;

Private float cajaAhorro;

Private float sueldoNeto;

// Constructor

Public Trabajador() {

Super();

// Constructor con parámetros

Public Trabajador(String cedula, String apellido, String nombre, int


anioIngreso,

Char sexo, float sueldoBase, boolean afiliadoCajaAhorro) {

Super(cedula, apellido, nombre, anioIngreso, sexo, sueldoBase,


afiliadoCajaAhorro);
}

@Override

Public void calcularSalario() {

Int aniosServicio = calcularAniosServicio();

Char sexo = getSexo();

Float sueldoBase = getSueldoBase();

If (sexo == ‘M’ || sexo == ‘m’) {

If (sueldoBase <= 75000 && aniosServicio > 7) {

Aumento = sueldoBase * 0.50f;

} else {

Aumento = sueldoBase * 0.40f;

} else if (sexo == ‘F’ || sexo == ‘f’) {

If (sueldoBase <= 97500 && aniosServicio > 5) {

Aumento = sueldoBase * 0.60f;

} else {

Aumento = sueldoBase * 0.40f;

@Override

Public void calcularDeducciones() {

Float sueldoBase = getSueldoBase();

Sso = sueldoBase * 0.005f; // 0.5%


Faov = sueldoBase * 0.01f; // 1%

cajaAhorro = isAfiliadoCajaAhorro() ¿ sueldoBase * 0.10f : 0; // 10%


si está afiliado

@Override

Public void mostrarNomina() {

calcularSalario();

calcularDeducciones();

float sueldoConAumento = getSueldoBase() + aumento;

sueldoNeto = sueldoConAumento – sso – faov – cajaAhorro;

String mensaje = “==== RECIBO DE PAGO ====\n” +

“Cédula: “ + getCedula() + “\n” +

“Apellido: “ + getApellido() + “\n” +

“Nombre: “ + getNombre() + “\n” +

“Sexo: “ + getSexo() + “\n” +

“Año de ingreso: “ + getAnioIngreso() + “\n” +

“Años de servicio: “ + calcularAniosServicio() + “\n” +

“Sueldo base: “ + getSueldoBase() + “ Bs\n” +

“Aumento: “ + aumento + “ Bs\n” +

“\nDeducciones:\n” +

“SSO (0.5%): “ + sso + “ Bs\n” +

“FAOV (1%): “ + faov + “ Bs\n” +

“Caja de Ahorro: “ + cajaAhorro + “ Bs\n” +

“Total deducciones: “ + (sso + faov + cajaAhorro) + “


Bs\n” +
“\nSUELDO NETO: “ + sueldoNeto + “ Bs\n” +

“========================”;

[Link](null, mensaje, “Recibo de Pago”,


JOptionPane.INFORMATION_MESSAGE);

// Setters y Getters para los nuevos atributos

Public float getAumento() {

Return aumento;

Public float getSso() {

Return sso;

Public float getFaov() {

Return faov;

Public float getCajaAhorro() {

Return cajaAhorro;

Public float getSueldoNeto() {

Return sueldoNeto;

}
}

Package ejerciciotrabajadores;

Import [Link];

Public class Principal {

Public static void main(String[] args) {

Int cantidad =
[Link]([Link](“Ingrese la cantidad de
trabajadores a procesar:”));

For (int i = 0; i < cantidad; i++) {

// Opción 1: Usando constructor vacío y leerDatos()

Trabajador trabajador = new Trabajador();

[Link]();

[Link]();

// Opción 2: Usando constructor con parámetros

/*

Trabajador trabajador = new Trabajador(

“12345678”,

“Pérez”,

“Juan”,

2015,

‘M’,

80000,

True
);

[Link]();

*/

[Link](0);

También podría gustarte