ahorcado.java


SUBMITTED BY: Guest

DATE: Jan. 23, 2014, 3:37 p.m.

FORMAT: Text only

SIZE: 5.3 kB

HITS: 988

  1. package ahorcado; /* @author Pablo*/
  2. import javax.swing.JOptionPane;
  3. public class Ahorcado {
  4. public static void main(String[] args) {
  5. boolean GANO=false;
  6. char[][]lista=new char[5][10]; /*ARMA LA MATRIZ de 5x10*/
  7. lista[0][0]='i';lista[0][1]='n';lista[0][2]='m';
  8. lista[0][3]='u';lista[0][4]='e';lista[0][5]='b';
  9. lista[0][6]='l';lista[0][7]='e';
  10. lista[1][0]='s';lista[1][1]='u';lista[1][2]='s';
  11. lista[1][3]='t';lista[1][4]='a';lista[1][5]='n';
  12. lista[1][6]='t';lista[1][7]='i';lista[1][8]='v';
  13. lista[1][9]='o';
  14. lista[2][0]='m';lista[2][1]='o';lista[2][2]='h';
  15. lista[2][3]='o';
  16. lista[3][0]='p';lista[3][1]='s';lista[3][2]='i';
  17. lista[3][3]='c';lista[3][4]='o';lista[3][5]='l';
  18. lista[3][6]='o';lista[3][7]='g';lista[3][8]='o';
  19. lista[4][0]='e';lista[4][1]='x';lista[4][2]='t';
  20. lista[4][3]='r';lista[4][4]='a';lista[4][5]='n';
  21. lista[4][6]='g';lista[4][7]='e';lista[4][8]='r';
  22. lista[4][9]='o';
  23. JOptionPane.showMessageDialog( null,"*****BIENVENIDO/A AL AHORCADO!!!****");
  24. int oportunidad=6,contadorLetras=0,letrasAcertadas=0;
  25. double n=Math.random();
  26. int fil=(int)(n*6);
  27. String palabra=armarPalabra(fil,lista);/*LLAMA METODO ARMAR PALABRA*/
  28. int largo=palabra.length();
  29. System.out.print(palabra.charAt(0));
  30. int contA;/*IMPRIME LA PALABRA CON SU PRIMER Y ULTIMA LETRA COMO PISTA; POR UNICA VEZ EN LA CONSOLA*/
  31. for (contA=1;contA<largo-2;contA++){
  32. System.out.print("* ");
  33. }
  34. System.out.print(palabra.charAt(largo-1));
  35. System.out.print(" <--CADA * ES UNA LETRA");
  36. char palabra2[]=new char[largo];/*ACA SE CREA UN ARREGLO QUE SERA LA PALABRA A COMPLETAR*/
  37. palabra2[0]=lista[fil][0];
  38. palabra2[largo-1]=lista[fil][largo-1];
  39. for(int i=1;i<largo-2;i++){
  40. palabra2[i]='*';
  41. }
  42. while((GANO==false)&&(oportunidad>0)){
  43. JOptionPane.showMessageDialog( null,"¿qué letra posee la palabra?");
  44. char letra=TecladoIn.readNonwhiteChar();
  45. contadorLetras++;
  46. boolean error=buscarLetra(palabra,letra,largo);/*LLAMA METODO BUSCARLETRA*/
  47. if(error==true){
  48. oportunidad=oportunidad-1;
  49. switch(oportunidad){
  50. case 5: JOptionPane.showMessageDialog( null," O");
  51. break;
  52. case 4: JOptionPane.showMessageDialog( null," O \n <");
  53. break;
  54. case 3: JOptionPane.showMessageDialog( null," O \n <V");
  55. break;
  56. case 2: JOptionPane.showMessageDialog( null," O \n <V>");
  57. break;
  58. case 1:JOptionPane.showMessageDialog( null," O \n <V> \n J");
  59. break;
  60. case 0:JOptionPane.showMessageDialog( null," O \n <V> \n J L");
  61. JOptionPane.showMessageDialog( null,"AHORCADO");
  62. break;
  63. }
  64. }
  65. else{letrasAcertadas++;
  66. }
  67. String muestra=nuevaImpresion(palabra,largo,letra,palabra2);/*LLAMA METODO NUEVAIMPRESION*/
  68. if(muestra.equals(palabra)==true){
  69. GANO=true;
  70. }
  71. JOptionPane.showMessageDialog( null,muestra);
  72. }
  73. if(oportunidad==0){
  74. JOptionPane.showMessageDialog( null,"Has perdido, mejor suerte para la proxima");
  75. }
  76. else{
  77. JOptionPane.showMessageDialog( null,"FELICITACIONES, HAS GANADO!!!");
  78. }
  79. double porc=(letrasAcertadas*100)/contadorLetras;
  80. JOptionPane.showMessageDialog( null,"PORCENTAJE DE ACIERTOS:"+porc+"%");
  81. }
  82. public static String armarPalabra (int fil, char lista[][]){ /*GENERA LA LISTA Y SACA LA PALABRA AL AZAR*/
  83. String palabra="";
  84. int col=0;
  85. while((col<10)&&(lista[fil][col]!=' ')){char temp=lista[fil][col];
  86. palabra=palabra+temp;
  87. col++;
  88. }
  89. return palabra;}
  90. public static boolean buscarLetra (String palabra, char letra, int largo){/*BUSCA LA LETRA EN LA PALABRA*/
  91. int contA=0;
  92. boolean error=true;
  93. while(largo>contA){
  94. if(palabra.charAt(contA)==letra){
  95. error=false;
  96. }
  97. contA++;
  98. }
  99. return error;
  100. }
  101. public static String nuevaImpresion (String palabra, int largo,char letra,char palabra2[]){
  102. String muestra="";
  103. int contB=0;
  104. while(largo>contB){
  105. if(palabra.charAt(contB)==letra){
  106. palabra2[contB]=letra;
  107. }
  108. muestra=muestra+palabra2[contB];
  109. contB++;}
  110. return muestra;
  111. }
  112. }

comments powered by Disqus