Java Runtime Environment
Java Development Kit
editor de texto o IDE Java
Mostrar más instrucciones
1
Construye la bucle principal del juego . Crear una clase llamada principal y escribir la siguiente función principal
clase
principal {static booleano playingGame = true; . Estáticos triedLetters int main ( string [] args ) { public static secretword = askForWord () , mientras que ( playingGame ) { printBodyAndTriedLetters (); printWordSoFar () ; getLetter (); if ( gameStatus () == 1 ) { System.out.println ( " Usted gana ! "); return 0; } else if ( gameStatus () == -1 ) { System.out.println ( "Se pierde secreto palabra fue: " + secretword ) ; return 0 ;} System.out.println (); System.out.println (); System.out.println () ;} } } establece la estructura del juego y le ofrece cinco funciones que necesidad de escribir para completar el juego : . askForWord (), printBodyAndTriedLetters (), printWordSoFar (), getLetter () y gameStatus () escribir la función askForWord . Esta función será muy simple. Utilice la clase BufferedReader que viene con Java para obtener una palabra secreta de la consola y , a continuación, imprimir un centenar de líneas de ocultar la palabra. Pública askForWord static String () { BufferedReader en = new BufferedReader ( nuevo InputStreamReader ( System.in )); System.out.print ( " ¿Cuál es la palabra secreta :") ; palabra String = in.readLine () toLowerCase (); for (int x = 0 ; x < 100 ; x + + . ) { System.out.println (); } return (palabra) ;} ( ver Referencias 1 ) Escribe los printBodyAndTriedLetters () función. Para ello, se va a imprimir las partes del cuerpo colgado en función del número de intentos que el jugador ha tenido hasta ahora , e imprimir todas las cartas que ha intentado. Públicos printBodyAndTriedLetters static void () { . //Si cero conjeturas , ninguna de ellas se evaluará como verdadero //Si dos, entonces la primera y segunda se evaluará como true.if ( conjeturas > = 1 ) System.out.print ( " cabeza") , si ( conjeturas > = 2 ) System.out.print ( "cuerpo "); if ( conjeturas > = 3 ) System.out.print ( "ARM IZQUIERDA "); if ( conjeturas > = 4 ) System.out . print (" RIGHT ARM "); if ( conjeturas > = 5 ) System.out.print ( " PIERNA IZQUIERDA " ), si adivina ( > = 6 ) System.out.print ( " PIERNA DERECHA" ) ; //Usted quiere que las letras impresas en orden alfabético order.Collections.sort ( triedLetters ) , porque (carta de encordado: triedLetters ) { System.out.print ( letra + "") ;} System.out.println () ;} printWordSoFar Write (). ¿Quieres comparar cada letra de la palabra con las letras probado e imprimir las cartas que coincidan . Si no se encuentra ninguna coincidencia, se desea imprimir un guión bajo ( "_") public static void printWordSoFar () {for (int x = 0 ; x < secretWord.length ( ) x + +) . { carta string = secretWord.substring ( x); booleano encontrado = false; para (String t : triedLetters ) { if ( letter.startsWith (t )) { System.out.print (t ) , encontrado = true ;} } if ( ¿Has encontrado ) System.out.print ("_ ") ;} } getLetter Write (). Esto es en realidad más simple de lo que parece . La carta será puesta a prueba por gameStatus , así que todo lo que hay que hacer aquí es reutilizar el código de la Etapa 2 para recuperar una carta del usuario. gameStatus Write (). Para hacer esto , reutilizar el código en printWordSoFar ( ) para probar si existe una carta . Sólo tiene que cambiar en una forma pequeña : para comprobar si el bucle ha tenido éxito en cada iteración. La siguiente funcionará: public static void gameStatus () { booleano resuelto = true; for (int x = 0 ; x < secretWord.length ( ) x + +) {letter String = secretWord.substring (x ) ; booleano encontrado = false; para ! (String t : triedLetters ) { if ( letter.startsWith (t )) { encontrado = true ;} } if ( encontrado) resolvió = false ;} //Si resuelto , vuelva 1 /. /Si no se resuelve y el juego terminado, devuelve -1 //Si nada de lo anterior , el retorno 0.if (resuelto ) return 1 ; . else if return ( ! resueltos && conjeturas > = 6 ) -1 , el retorno más 0 ; }
2
3
4
5
6