Se cuenta con los siguientes arreglos: (El apuntador del arreglo debe de valer -1)
El primero unidimensional tipo entero de 5 posiciones para el número de empelado.
El segundo bidimensional String de 5 posiciones para el nombre.
El tercero Bidimensional String de 5 posiciones para el Apellido Paterno.
El Cuarto Bidimensional String de 5 posiciones para el departamento.
El último, unidimensional de tipo double para el Sueldo
Deberá manipular un menú de opciones considerando lo siguiente:
1.- Registro de Empleados.
Para implementar esta opción deberá de verificar que exista espacio disponible para poder insertar (No. Empleado, nombre, apellido paterno, departamento, sueldo), de lo contrario imprimir “No hay espacio”.
Nota: Deberá validar que el número de empleado no se repita y el departamento serán:
* Calidad.
* Ingeniería.
* Recursos Humanos.
* Producción.
2.- Consulta General.
Para implementar esta opción deberá verificar que exista al menos un registro, de lo contrario imprimir “No hay registros”.
Sí existe al menos un registro, imprimir (No. Empleado, nombre, apellido patero, departamento, sueldo) de cada registro existente.
3.- Búsqueda por número de empleado
Deberá verificar que exista l menos un registro, de lo contrario imprimir “No hay datos”.
Sí existe al menos un registro, pedir el número de empleado a buscar e implementar la búsqueda. Sí el número de empleado existe imprimir la información del registro (No. Empleado, nombre, apellido, paterno, departamento, sueldo). Sí el número de empleado a buscar no existe, imprimir “No existe el número de empleado”.
4.- Búsqueda por departamento
(Aplica mismos criterios de la búsqueda por número de empleado).
5.- Modificar Sueldo.
Debe existir al menos un registro para implementar esta opción. Si no existe al menos un registró imprimir “No hay registros”. Si hay registros, pedir número de empleado e implementar la búsqueda. Si existe el número de empleado, pedir el nuevo sueldo y modificar el sueldo. Si no existe el número de empleado, imprimir “No existe el número de empleado”.
6.- Eliminar.
Debe existir al menos un registro, de lo contrario imprimir “No hay dados”.
Si existe al menos un registró, eliminar el último registró (imprimir la información a eliminar).
7.- Ordenar por apellido.
Debe de existir al menos un registro, de lo contrario imprimir “No hay registro”.
Si hay al menos un registro, implementar la ordenación.
8.- Salida.
Código
import java.util.Arrays; import javax.swing.JOptionPane; public class Final{ boolean Dato; int []NumeroDeEmpleado = new int [5]; double []Sueldo = new double [5]; int op; int ap=-1; int i; int aux1; do{ + "\n1.-Registrar Empleado" + "\n2.-Eliminar Ultimo Registro" + "\n3.-Consultar" + "\n4.-Modificar sueldo" + "\n5.-Ordenar Por Apellido Paterno" + "\n6.-Salir")); switch (op){ case 1: ap++; if(ap!=4) { Dato=true; if(ap==0) { NumeroDeEmpleado[ap]=aux1; } else{ if(ap!=0) { for(i=0;i<=ap;i++) { if(NumeroDeEmpleado[ap]==aux1) { Dato=false; } } if(Dato==false) { }} else { aux1=NumeroDeEmpleado[ap]; } } do { op=Integer.parseInt(JOptionPane.showInputDialog("Dame el departamento\n1._ Calidad\n2._ Ingenieria\n3._ Recursos Humanos\n4._ Produccion ")); if(op==1) { Departamento[ap]="Calidad"; } else { if(op==2) { Departamento[ap]="Ingenieria"; } else { if(op==3) { Departamento[ap]="Recursos Humanos"; } else { if(op==4) { Departamento[ap]="Produccion"; } } } } }while(op<1||op>4); } else { } break; case 2: { if (ap==-1) { }else{ JOptionPane.showInputDialog(NumeroDeEmpleado[ap]+" "+NombreDeEmpleado[ap]+" "+ApellidoPaterno[ap]+" "+Departamento[ap]+" "+Sueldo[ap]); NumeroDeEmpleado[ap]=0; NombreDeEmpleado[ap]=null; ApellidoPaterno[ap]=null; Departamento[ap]=null; Sueldo[ap]=0.0; ap--; } break;} case 3:{ if (ap==-1) { }else{ + "\n2.-consulta por numero de empleado" + "\n3.-Consulta por departamento")); switch (op) { case 1: { if(ap!=-1) { for( i=0;i<=ap;i++) { aux=aux+"\n\nNumero Empleado: "+NumeroDeEmpleado[i] +"\nNombre: "+NombreDeEmpleado[i] +"\nApellido paterno: "+ApellidoPaterno[i] +"\nDepartamento: "+Departamento[i] +"\nSueldo: $"+Sueldo[i]; } break; } else { } ap=ap-1; break ;} case 2:int Buscar; for ( i = 0; i < 5; i++) { if(NumeroDeEmpleado[i]==Buscar){ + ""+NombreDeEmpleado[i]+"" + " "+ApellidoPaterno[i]+"" + " "+Departamento[i]+" "+Sueldo[i]); } } break; case 3:for ( i = 0; i < 5; i++) { int Busque=0; do{ + "\n1._ Calidad" + "\n2._ Ingenieria" + "\n3._ Recursos Humanos" + "\n4._ Produccion ")); if(Busque==1) { Departamento[ap]="Calidad"; } else { if(Busque==2) { Departamento[ap]="Ingenieria"; } else { if(Busque==3) { Departamento[ap]="Recursos Humanos"; } else { if(Busque==4) { Departamento[ap]="Produccion"; } } } } { } + ""+NombreDeEmpleado[i]+"" + " "+ApellidoPaterno[i]+" " + ""+Departamento[i]+"" + " "+Sueldo[i]); }while(op<1||op>4); } break; default: break; } } break;} case 4:{ if(ap!=-1) {int Suecambio; int si=-1; + "\n Para Modificar El Sueldo ")); for( i=0;i<=ap;i++) { if(NumeroDeEmpleado[i]==Suecambio) { si=i; } } if(si!=-1) { + "\n"+NumeroDeEmpleado[si]+" " +NombreDeEmpleado[si]+" "+ApellidoPaterno[si])); } else { } } else { } } break; case 5:{ if(ap!=-1){ }else { } }break; }}while(op!=6);}}