(); statisk int gætter = 0; statisk String secretWord ;
offentlige statiske int main ( String [] args ) { secretWord = askForWord (); while ( playingGame ) { printBodyAndTriedLetters (); printWordSoFar (); getLetter (); if ( gameStatus () == 1 ) { System.out.println ( " Du vinder ! ") return 0 ;} else if ( gameStatus () == -1 ) { System.out.println ( " Du mister Secret word var : " + secretWord ) , tilbagevenden 0 ;} System.out.println (); System.out.println (); System.out.println ( );} }}
Dette udstikker spillets struktur og giver dig fem funktioner , du nødt til at skrive for at gennemføre spillet : . askForWord () , printBodyAndTriedLetters () , printWordSoFar () , getLetter () og gameStatus ()
2
Skriv askForWord funktion. Denne funktion vil være temmelig simpel . Brug det BufferedReader klasse, der kommer med Java for at få et hemmeligt ord fra konsollen , og derefter udskrive omkring hundrede linjer for at skjule ord.
Public static String askForWord () { BufferedReader i = new BufferedReader (ny InputStreamReader ( System.in )), print (" Hvad er det hemmelige ord :"); String word = in.readLine () toLowerCase (); for (int x = 0; x < 100; x + + . ) { System.out.println ( );} return ( word );} (se Referencer 1 )
3
Skriv printBodyAndTriedLetters ( ) funktion. Til dette , er du nødt til at udskrive de hængt kropsdele baseret på antallet af gæt spilleren har haft hidtil , og udskrive alle de breve hun har prøvet.
Public static void printBodyAndTriedLetters () { . //Hvis nul gæt vil ingen af disse evalueres som true //Hvis der to, så både den første og den anden vil vurdere som true.if ( gæt > = 1) print (" hoved" ), og hvis ( gæt > = 2) print (" Body" ), hvis ( gæt > = 3) print (" venstre arm ") if ( gæt > = 4) System.out . print ( "RIGHT ARM ") if ( gæt > = 5) print (" venstre ben ") if ( gæt > = 6) print (" RIGHT LEG "); < br >
//Du ønsker trykte bogstaver i alfabetisk order.Collections.sort ( triedLetters ), for (String bogstav: triedLetters ) { print ( bogstav + "") ;} System.out.println () ;}
4
Skriv printWordSoFar (). Du ønsker at sammenligne hvert bogstav i ordet med afprøvede breve og udskrive disse bogstaver , der matcher . Hvis der ikke findes noget match , du ønsker at udskrive en understregning ( "_" )
public static void printWordSoFar () { for (int x = 0; x < secretWord.length (); x + +). { String brev = secretWord.substring (x ), boolean fundet = false; for (String t : triedLetters ) { if ( letter.startsWith (t )) { print ( t), fundet = true ;}} if ( ! fundet) print (" _" );}}
5
Skriv getLetter (). Dette er faktisk enklere end det ser ud. Brevet vil blive testet af gameStatus , så alt hvad du behøver at gøre her er genbruge koden fra trin 2 for at hente et brev fra brugeren.
6
Skriv gameStatus (). For at gøre dette , genbruge koden i printWordSoFar () for at teste om et brev eksisterer. Behøver du kun at ændre det i én lille måde : at teste, om sløjfen har været en succes i enhver iteration . Følgende vil arbejde : Hej
public static void gameStatus () { boolean løst = true; for (int x = 0; x < secretWord.length (); x + +) { String brev = secretWord.substring (x ), boolean fundet = false; for! (String t : triedLetters ) { if ( letter.startsWith (t )) { fundet = true ;}} if ( fundet) løst = false; } //Hvis der løst, vender tilbage 1 /. /Hvis det ikke løst, og game over , returnere -1 //Hvis ingen af ovenstående afkast 0.if ( løst) tilbagevenden 1; . else if ( ! løst && gæt > = 6 ) return -1 , ellers return 0 ; }