package ahorcado; /* @author Pablo*/ import javax.swing.JOptionPane; public class Ahorcado { public static void main(String[] args) { boolean GANO=false; char[][]lista=new char[5][10]; /*ARMA LA MATRIZ de 5x10*/ lista[0][0]='i';lista[0][1]='n';lista[0][2]='m'; lista[0][3]='u';lista[0][4]='e';lista[0][5]='b'; lista[0][6]='l';lista[0][7]='e'; lista[1][0]='s';lista[1][1]='u';lista[1][2]='s'; lista[1][3]='t';lista[1][4]='a';lista[1][5]='n'; lista[1][6]='t';lista[1][7]='i';lista[1][8]='v'; lista[1][9]='o'; lista[2][0]='m';lista[2][1]='o';lista[2][2]='h'; lista[2][3]='o'; lista[3][0]='p';lista[3][1]='s';lista[3][2]='i'; lista[3][3]='c';lista[3][4]='o';lista[3][5]='l'; lista[3][6]='o';lista[3][7]='g';lista[3][8]='o'; lista[4][0]='e';lista[4][1]='x';lista[4][2]='t'; lista[4][3]='r';lista[4][4]='a';lista[4][5]='n'; lista[4][6]='g';lista[4][7]='e';lista[4][8]='r'; lista[4][9]='o'; JOptionPane.showMessageDialog( null,"*****BIENVENIDO/A AL AHORCADO!!!****"); int oportunidad=6,contadorLetras=0,letrasAcertadas=0; double n=Math.random(); int fil=(int)(n*6); String palabra=armarPalabra(fil,lista);/*LLAMA METODO ARMAR PALABRA*/ int largo=palabra.length(); System.out.print(palabra.charAt(0)); int contA;/*IMPRIME LA PALABRA CON SU PRIMER Y ULTIMA LETRA COMO PISTA; POR UNICA VEZ EN LA CONSOLA*/ for (contA=1;contA0)){ JOptionPane.showMessageDialog( null,"¿qué letra posee la palabra?"); char letra=TecladoIn.readNonwhiteChar(); contadorLetras++; boolean error=buscarLetra(palabra,letra,largo);/*LLAMA METODO BUSCARLETRA*/ if(error==true){ oportunidad=oportunidad-1; switch(oportunidad){ case 5: JOptionPane.showMessageDialog( null," O"); break; case 4: JOptionPane.showMessageDialog( null," O \n <"); break; case 3: JOptionPane.showMessageDialog( null," O \n "); break; case 1:JOptionPane.showMessageDialog( null," O \n \n J"); break; case 0:JOptionPane.showMessageDialog( null," O \n \n J L"); JOptionPane.showMessageDialog( null,"AHORCADO"); break; } } else{letrasAcertadas++; } String muestra=nuevaImpresion(palabra,largo,letra,palabra2);/*LLAMA METODO NUEVAIMPRESION*/ if(muestra.equals(palabra)==true){ GANO=true; } JOptionPane.showMessageDialog( null,muestra); } if(oportunidad==0){ JOptionPane.showMessageDialog( null,"Has perdido, mejor suerte para la proxima"); } else{ JOptionPane.showMessageDialog( null,"FELICITACIONES, HAS GANADO!!!"); } double porc=(letrasAcertadas*100)/contadorLetras; JOptionPane.showMessageDialog( null,"PORCENTAJE DE ACIERTOS:"+porc+"%"); } public static String armarPalabra (int fil, char lista[][]){ /*GENERA LA LISTA Y SACA LA PALABRA AL AZAR*/ String palabra=""; int col=0; while((col<10)&&(lista[fil][col]!=' ')){char temp=lista[fil][col]; palabra=palabra+temp; col++; } return palabra;} public static boolean buscarLetra (String palabra, char letra, int largo){/*BUSCA LA LETRA EN LA PALABRA*/ int contA=0; boolean error=true; while(largo>contA){ if(palabra.charAt(contA)==letra){ error=false; } contA++; } return error; } public static String nuevaImpresion (String palabra, int largo,char letra,char palabra2[]){ String muestra=""; int contB=0; while(largo>contB){ if(palabra.charAt(contB)==letra){ palabra2[contB]=letra; } muestra=muestra+palabra2[contB]; contB++;} return muestra; } }