elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Temas
Páginas: [1]
1  Programación / Java / HOLA MUNDO Me podrian ayudar D: en: 25 Mayo 2016, 03:04 am
Este es el trabajo que debo hacer pero me fallan en que no se repita el num de registro Y en la ordenación de apellidos con los atributos mostrados(nombre,sueldo,departamento numero dempleado) AYUDA!!!



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
  1. import java.util.Arrays;
  2.  
  3.  
  4. import javax.swing.JOptionPane;
  5.  
  6. public class Final{
  7.  
  8.  
  9.  
  10.  
  11. public static void main(String[] args) {
  12. boolean  Dato;
  13. int    []NumeroDeEmpleado = new int [5];
  14. String []NombreDeEmpleado = new String [5];
  15. String []ApellidoPaterno  = new String [5];
  16. String []Departamento     = new String [5];
  17. double []Sueldo         = new double [5];
  18. int op;
  19. int ap=-1;
  20. int i;
  21. int aux1;
  22.  
  23.  
  24. do{
  25.  
  26. op=Integer.parseInt(JOptionPane.showInputDialog("Menu"
  27. + "\n1.-Registrar Empleado"
  28. + "\n2.-Eliminar Ultimo Registro"
  29. + "\n3.-Consultar"
  30. + "\n4.-Modificar sueldo"
  31. + "\n5.-Ordenar Por Apellido Paterno"
  32. + "\n6.-Salir"));
  33.  
  34.    switch (op){
  35.    case 1:
  36.  
  37.     ap++;
  38. if(ap!=4)
  39. {
  40.  
  41. Dato=true;
  42.  
  43. if(ap==0)
  44. {
  45. aux1=Integer.parseInt(JOptionPane.showInputDialog("Numero de empleado"));
  46. NumeroDeEmpleado[ap]=aux1;
  47. }
  48.  
  49. else{ if(ap!=0)
  50. {
  51. aux1=Integer.parseInt(JOptionPane.showInputDialog("Numero de empleado"));
  52.  
  53. for(i=0;i<=ap;i++)
  54. {
  55. if(NumeroDeEmpleado[ap]==aux1)
  56. {
  57. Dato=false;
  58. }
  59. }
  60. if(Dato==false)
  61. {
  62. JOptionPane.showMessageDialog(null, "Numero repetido");
  63.  
  64. }}
  65. else
  66. {
  67. aux1=NumeroDeEmpleado[ap];
  68. }
  69. }
  70.  
  71. NombreDeEmpleado[ap]=JOptionPane.showInputDialog("Dame un nombre ");
  72. ApellidoPaterno[ap]=JOptionPane.showInputDialog("Dame el apellido paterno ");
  73. do
  74. {
  75. op=Integer.parseInt(JOptionPane.showInputDialog("Dame el departamento\n1._ Calidad\n2._ Ingenieria\n3._ Recursos Humanos\n4._ Produccion "));
  76. if(op==1)
  77. {
  78. Departamento[ap]="Calidad";
  79. }
  80. else
  81. {
  82. if(op==2)
  83. {
  84. Departamento[ap]="Ingenieria";
  85. }
  86. else
  87. {
  88. if(op==3)
  89. {
  90. Departamento[ap]="Recursos Humanos";
  91. }
  92. else
  93. {
  94. if(op==4)
  95. {
  96. Departamento[ap]="Produccion";
  97. }
  98. }
  99. }
  100. }
  101. }while(op<1||op>4);
  102.  
  103. Sueldo[ap]=Double.parseDouble(JOptionPane.showInputDialog("Dame el sueldo "));
  104. }
  105. else
  106. {
  107. JOptionPane.showMessageDialog(null,"No hay espacio ");
  108. }
  109. break;
  110.  
  111.    case 2:
  112.    {
  113.     if (ap==-1) {
  114.     JOptionPane.showMessageDialog(null,"No Hay Empleados Registrados");
  115.  
  116. }else{
  117. JOptionPane.showInputDialog(NumeroDeEmpleado[ap]+" "+NombreDeEmpleado[ap]+" "+ApellidoPaterno[ap]+" "+Departamento[ap]+" "+Sueldo[ap]);
  118. NumeroDeEmpleado[ap]=0;
  119. NombreDeEmpleado[ap]=null;
  120. ApellidoPaterno[ap]=null;
  121. Departamento[ap]=null;
  122. Sueldo[ap]=0.0;
  123. ap--;
  124. JOptionPane.showInputDialog("Se ha eliminado el ultimo empleado registrado");
  125. }
  126.  
  127.     JOptionPane.showMessageDialog(null ,"Regresando A Menu");
  128.  
  129.                                      break;}
  130.    case 3:{
  131.     if (ap==-1) {
  132.     JOptionPane.showMessageDialog(null, "No Hay Registros");
  133.  
  134. }else{
  135. op=Integer.parseInt(JOptionPane.showInputDialog("1.-Consulta general"
  136. + "\n2.-consulta por numero de empleado"
  137. + "\n3.-Consulta por departamento"));
  138.  
  139.  
  140.  
  141. switch (op) {
  142. case 1:
  143. {
  144. if(ap!=-1)
  145. {
  146. String aux = "";
  147. for( i=0;i<=ap;i++)
  148. {
  149. aux=aux+"\n\nNumero Empleado: "+NumeroDeEmpleado[i]
  150. +"\nNombre: "+NombreDeEmpleado[i]
  151. +"\nApellido paterno: "+ApellidoPaterno[i]
  152. +"\nDepartamento: "+Departamento[i]
  153. +"\nSueldo: $"+Sueldo[i];
  154. }
  155. JOptionPane.showMessageDialog(null,"Consulta General "+aux);
  156. break;
  157. }
  158. else
  159. {
  160. JOptionPane.showMessageDialog(null,"No hay registros ");
  161. }
  162.  
  163. ap=ap-1;
  164. break ;}
  165. case 2:int Buscar;
  166. Buscar=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el numero de empleado a buscar"));
  167.  
  168. for ( i = 0; i < 5; i++) {
  169. if(NumeroDeEmpleado[i]==Buscar){
  170. JOptionPane.showMessageDialog(null, NumeroDeEmpleado[i]+" "
  171. + ""+NombreDeEmpleado[i]+""
  172. + " "+ApellidoPaterno[i]+""
  173. + " "+Departamento[i]+" "+Sueldo[i]);
  174.  
  175. }
  176. }
  177.  
  178. break;
  179. case 3:for ( i = 0; i < 5; i++) {
  180. int Busque=0;
  181. do{
  182. Busque=Integer.parseInt(JOptionPane.showInputDialog("Ingrese su departamento a buscar"
  183. + "\n1._ Calidad"
  184. + "\n2._ Ingenieria"
  185. + "\n3._ Recursos Humanos"
  186. + "\n4._ Produccion "));
  187. if(Busque==1)
  188. {
  189. Departamento[ap]="Calidad";
  190. }
  191. else
  192. {
  193. if(Busque==2)
  194. {
  195. Departamento[ap]="Ingenieria";
  196. }
  197. else
  198. {
  199. if(Busque==3)
  200. {
  201. Departamento[ap]="Recursos Humanos";
  202. }
  203. else
  204. {
  205. if(Busque==4)
  206. {
  207. Departamento[ap]="Produccion";
  208. }
  209.  
  210. }
  211. }
  212. }
  213.  
  214.  
  215. {
  216.  
  217.  
  218. }
  219. JOptionPane.showMessageDialog(null, NumeroDeEmpleado[i]+" "
  220. + ""+NombreDeEmpleado[i]+""
  221. + " "+ApellidoPaterno[i]+" "
  222. + ""+Departamento[i]+""
  223. + " "+Sueldo[i]);
  224. }while(op<1||op>4);
  225. }
  226.  
  227. break;
  228.  
  229. default:
  230. JOptionPane.showMessageDialog(null, "Opcion no valida");
  231. break;
  232. }
  233. }
  234.                                          break;}
  235.    case 4:{
  236. if(ap!=-1)
  237. {int Suecambio;
  238. int si=-1;
  239. Suecambio=Integer.parseInt(JOptionPane.showInputDialog("Introduce El Numero De Empleado "
  240. + "\n Para Modificar El Sueldo "));
  241. for( i=0;i<=ap;i++)
  242. {
  243. if(NumeroDeEmpleado[i]==Suecambio)
  244. {
  245. si=i;
  246. }
  247. }
  248. if(si!=-1)
  249. {
  250. Sueldo[si]=Double.parseDouble(JOptionPane.showInputDialog("Ingrese El Nuevo Sueldo Del Empleado "
  251. + "\n"+NumeroDeEmpleado[si]+" "
  252. +NombreDeEmpleado[si]+" "+ApellidoPaterno[si]));
  253. }
  254. else
  255. {
  256. JOptionPane.showMessageDialog(null,"No Existe El Numero De Empleado ");
  257. }
  258. }
  259. else
  260. {
  261. JOptionPane.showMessageDialog(null, "No hay Datos");
  262. }
  263.    }
  264.                                 break;
  265.    case 5:{
  266.     if(ap!=-1){
  267.  
  268.  
  269.     Arrays.sort(ApellidoPaterno);
  270.     for (String numero:ApellidoPaterno)
  271.     System.out.print(numero +"");
  272.  
  273.  
  274.     }else
  275.     {
  276. JOptionPane.showMessageDialog(null, "No hay Datos");
  277. }
  278.    }break;
  279.  
  280.  
  281.  
  282.  
  283.    }}while(op!=6);}}
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
2  Programación / Java / Hola me podrian explicar este codigo en: 20 Mayo 2016, 19:16 pm
Entiendo la basico de areglos etc pero lo de proceso me destruye de donde sale
Código
  1. import java.util.Scanner;
  2.  
  3. public class Trabajofinal{
  4.  
  5.  
  6. static int NumeroDeEmpleado[];
  7. static String nombre[];
  8. static String apellidopaterno[];
  9. static String Departamento[];
  10. static double sueldo[];
  11. int op;
  12. int buscar;
  13. String buscaDepartamento;
  14. int fin=-1;
  15. static int no=1;
  16.  
  17. Scanner tcl=new Scanner(System.in);
  18. public static void main(String[] args) {
  19. NumeroDeEmpleado= new int [5];
  20. nombre= new String [5];
  21. apellidopaterno= new String [5];
  22. Departamento= new String [5];
  23. sueldo= new double [5];
  24.  
  25. Trabajofinal app=new Trabajofinal(); // se crea una instancia OBJeto de la clase TrabajoFinal
  26. do {
  27. app.entrada();
  28. app.proceso();
  29. } while (no!=-1);
  30.  
  31.  
  32. }
  33. public void entrada(){
  34. System.out.println("1.-Registrar Empleado");
  35. System.out.println("2.-Eliminar Ultimo Registro");
  36. System.out.println("3.-Busqueda");
  37. System.out.println("4.-Modificar sueldo");
  38. System.out.println("5.-Ordenar Por Apellido Paterno");
  39. System.out.println("6.-Salir");
  40. op=tcl.nextInt();
  41.  
  42. }
  43. public void proceso(){
  44. switch (op) {
  45. case 1:
  46. fin++;
  47. if (fin==5) {
  48. System.out.println("no hay espacio");
  49. }else{
  50. System.out.println("Ingrese nombre del empleado");
  51. nombre[fin]=tcl.next();
  52. System.out.println("ingrese su Apellido paterno");
  53. apellidopaterno[fin]=tcl.next();
  54. System.out.println("ingrese numero del empleado1");
  55. NumeroDeEmpleado[fin]=tcl.nextInt();
  56.  
  57. System.out.println("Ingrese su departamento De Trabajo");
  58. System.out.println("\nDepartamentos Disponibles> "
  59.  
  60. + "calidad  "  
  61. + "Ingenieria  "
  62. + "produccion  "
  63. + "recursoshumanos  ");
  64.  
  65. Departamento[fin]=tcl.next();
  66. if (Departamento[fin].equals(""+ "calidad")||
  67. Departamento[fin].equals("recursoshumanos")||
  68. Departamento[fin].equals("produccion")||
  69. Departamento[fin].equals("ingenieria")) {
  70. }else{
  71. System.out.println("Departamento no valido");
  72. fin=fin-1;
  73. proceso();
  74. break;
  75. }
  76. System.out.println("ingrese su sueldo");
  77. sueldo[fin]=tcl.nextDouble();
  78. }
  79. break;
  80.  
  81. case 2:
  82. if (fin==-1) {
  83. System.out.println("no hay registros");
  84. System.out.println("");
  85. }else{
  86. System.out.println(NumeroDeEmpleado[fin]+" "+nombre[fin]+" "+apellidopaterno[fin]+" "+Departamento[fin]+" "+sueldo[fin]);
  87. NumeroDeEmpleado[fin]=0;
  88. nombre[fin]=null;
  89. apellidopaterno[fin]=null;
  90. Departamento[fin]=null;
  91. sueldo[fin]=0.0;
  92. fin--;
  93. System.out.println("Se ha eliminado el ultimo empleado registrado");
  94. }
  95.  
  96. System.out.println(" ");
  97. break;
  98.  
  99. case 3:
  100. if (fin==-1) {
  101. System.out.println("no hay registros");
  102. System.out.println("");
  103. }else{
  104. System.out.println("1.-Consulta general");
  105. System.out.println("2.-Consulta por numero de empleado");
  106. System.out.println("3.-Consulta por departamento");
  107. op=tcl.nextInt();
  108.  
  109. switch (op) {
  110. case 1:
  111. fin=fin+1;
  112. for (int i = 0; i < fin; i++) {
  113. System.out.println(NumeroDeEmpleado[i]+" "+
  114. nombre[i]+" "+
  115. apellidopaterno[i]+" "+
  116. Departamento[i]+" "+sueldo[i]);
  117. }
  118. System.out.println(" ");
  119. fin=fin-1;
  120. break;
  121. case 2:
  122. System.out.println("Ingrese el numero de empleado a buscar");
  123. buscar=tcl.nextInt();
  124. for (int i = 0; i < 5; i++) {
  125. if(NumeroDeEmpleado[i]==buscar){
  126. System.out.println(NumeroDeEmpleado[i]+" "+nombre[i]+" "+apellidopaterno[i]+" "+Departamento[i]+" "+sueldo[i]);
  127. System.out.println(" ");
  128. }
  129. }
  130.  
  131. break;
  132. case 3:
  133. vaciar();
  134. System.out.println("Ingrese el departamento a buscar");
  135. buscaDepartamento=tcl.next();
  136. for (int i = 0; i < 5; i++) {
  137. if(Departamento[i].equals(buscaDepartamento)){
  138. System.out.println(NumeroDeEmpleado[i]+" "+nombre[i]+" "+apellidopaterno[i]+" "+Departamento[i]+" "+sueldo[i]);
  139. }
  140.  
  141. }
  142. System.out.println(" ");
  143. break;
  144.  
  145. default:
  146. System.out.println("Opcion no valida");
  147. break;
  148. }
  149. }
  150. break;
  151.  
  152. case 4:
  153. if (fin==-1) {
  154. System.out.println("no hay registros");
  155. System.out.println("");
  156. }else{
  157. System.out.println("Ingrese el numero de empleado a buscar");
  158. buscar=tcl.nextInt();
  159. for (int i = 0; i < 5; i++) {
  160. if(NumeroDeEmpleado[i]==buscar){
  161. System.out.println(NumeroDeEmpleado[i]+" "+
  162. nombre[i]+" "+
  163. apellidopaterno[i]+" "+
  164. Departamento[i]+" "+
  165. sueldo[i]);
  166. System.out.println(" ");
  167. System.out.println("Ingrese el nuevo sueldo");
  168. sueldo[i]=tcl.nextDouble();
  169. }
  170. }
  171. System.out.println("Se ha modificado correctamente");
  172. System.out.println(" ");
  173. }
  174.  
  175.  
  176. break;
  177.  
  178. case 5:
  179.  System.out.println("array paterno desordenado: ");
  180.        for(int i=0; i<apellidopaterno.length; i++) {
  181.         System.out.println( " paterno[" + i + "] = " + apellidopaterno[i] ); }
  182.  
  183. String aux;
  184.        for(int i=1; i<=apellidopaterno.length; i++) {  
  185.            for(int j=0; j<apellidopaterno.length-i; j++) {
  186.                if( apellidopaterno[j].compareTo( apellidopaterno[j+1] ) > 0 ) {
  187.                    aux   = apellidopaterno[j];
  188.                    apellidopaterno[j]  = apellidopaterno[j+1];
  189.                    apellidopaterno[j+1]= aux;
  190.                }    
  191.            }
  192.        }
  193.  
  194.        System.out.println(" array paterno ordenado: ");
  195.        for(int i=0; i<apellidopaterno.length; i++) {
  196.        System.out.println( "Trabajador[" + i + "] = " + apellidopaterno[i] );
  197.        System.out.println(" ");
  198.   }
  199.  
  200. break;
  201.  
  202. case 6:
  203. no=-1;
  204. break;
  205.  
  206. default:
  207. System.out.println("esa opcion no es valida");
  208. System.out.println(" ");
  209. break;
  210. }
  211. }
  212. public void vaciar(){
  213. fin=fin+1;
  214. for (int i = fin; i < Departamento.length; i++) {
  215. Departamento[i]=" ";
  216. }
  217. fin=fin-1;
  218. }
  219.  
  220.  
  221.  
  222. }
  223.  
[[/i][/i]
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines