Sebelum melalui langkah -langkah, inilah garis besar aturan umum permainan:
Pertama, kita akan menelepon kelas menebak -nebak dan menambahkan fungsi utama kosong sebagai berikut:
public class GuessingGame {
public static void main ( String [] args ) {
}
}
Dengan hanya baris ini, program ini sepenuhnya valid; Anda dapat mengkompilasi dan menjalankan, tetapi belum menampilkan apa pun ke konsol.
Untuk menghasilkan nomor yang nanti akan ditebak oleh pengguna, mari kita nyatakan variabel tipe integer angka dan gunakan instruksi ini: *(math.random () 100 + 1) untuk menetapkannya nomor acak dalam kisaran 1 hingga 100 .
public class GuessingGame {
public static void main ( String [] args ) {
int computerNumber = ( int ) ( Math . random ()* 100 + 1 );
System . out . println ( "The correct guess would be " + computerNumber );
}
}
Baris keempat menunjukkan nomor acak kepada pengguna saat ini, tetapi baris ini tidak dicetak setelah menjalankan versi final game ini. Untuk saat ini, baris ini hanya mencatat jawaban yang benar ke konsol untuk verifikasi.
Sekarang, nomor acak yang dihasilkan oleh komputer harus ditebak oleh pengguna. Untuk mendapatkan jawaban dari pengguna, kami mendeklarasikan UserAnswer variabel int lainnya dan menginisialisasi itu.
Ini sangat sederhana dan Anda dapat melakukannya dengan menginisialisasi jumlah variabel int: int count = 1 . Ini juga menampilkan kotak dialog input sampai pengguna menebak nomor yang tepat.
Langkah 5: Periksa jawaban pengguna, cukup jelas bahwa pengguna tidak dapat diberikan hanya satu upaya untuk menebak nomor dalam game ini. Jadi, kita perlu memberi pengguna sebanyak mungkin upaya yang mereka butuhkan dan jumlah yang ditebak dalam semua upaya harus diperiksa. Menghitung jumlah upaya sudah dilakukan pada langkah sebelumnya.
Sekarang, input jawaban oleh pengguna diperiksa dengan nomor acak komputer menggunakan while loop dimulai dengan kode ini: while (useranswer! = ComputerNumber) . Sebagian besar kode di bawah loop "while" dijelaskan di bawah ini:
while ( userAnswer != computerNumber )
{
String response = JOptionPane . showInputDialog ( null ,
"Enter a guess between 1 and 100" , "Guessing Game" , 3 );
userAnswer = Integer . parseInt ( response );
JOptionPane . showMessageDialog ( null , "" + determineGuess ( userAnswer , computerNumber , count ));
count ++;
}
Ketika argumen dilewatkan dari Loop untuk menentukan Guess , kita perlu memeriksa seberapa dekat nomor yang ditebak oleh pengguna dengan nomor yang dihasilkan komputer dan menampilkan jumlah upaya yang dilakukan. Ada lima pernyataan bersyarat yang akan dieksekusi berdasarkan input angka oleh pengguna.
public static String determineGuess ( int userAnswer , int computerNumber , int count ){
if ( userAnswer <= 0 || userAnswer > 100 ) {
return "Your guess is invalid" ;
}
else if ( userAnswer == computerNumber ){
return "Correct! n Total Guesses: " + count ;
}
else if ( userAnswer > computerNumber ) {
return "Your guess is too high, try again. n Try Number: " + count ;
}
else if ( userAnswer < computerNumber ) {
return "Your guess is too low, try again. n Try Number: " + count ;
}
else {
return "Your guess is incorrect n Try Number: " + count ;
}
}