Rumah Keuangan Pribadi Java Programming Challenge: Menambahkan Kelas ke Program Tic-Tac-Toe yang Sederhana

Java Programming Challenge: Menambahkan Kelas ke Program Tic-Tac-Toe yang Sederhana

Video: Coding Challenge #124: Flocking Simulation 2024

Video: Coding Challenge #124: Flocking Simulation 2024
Anonim

Dalam tantangan ini, Anda memperbaiki permainan Tic-Tac-Toe Anda dengan menambahkan kelas pemrograman Java, yang memungkinkan program tersebut melakukan upaya yang tidak sempurna menuju strategi saat menentukan komputer. bergerak.

Dalam Tantangan Pemrograman Java: Game Tic-Tac-Toe yang Sederhana Anda ditantang untuk menulis sebuah program untuk memainkan permainan sederhana Tic-Tac-Toe. Dalam tantangan ini, Anda memodifikasi kode sumber untuk solusi Anda sebelumnya untuk membantu pengaturan strategi komputer.

Program harus memiliki cara untuk mewakili secara internal status masing-masing dari sembilan kotak yang membentuk papan Tic-Tac-Toe.

  • Program ini harus menyediakan cara untuk mendaftarkan pemindahan pemain, dan harus memastikan bahwa setiap gerakan itu valid (misalnya, pemain tidak diperbolehkan bermain di lapangan yang sudah ditempati oleh X atau O.

  • Program harus dapat menentukan kapan pemain telah menang dengan melihat ke delapan dari kombinasi tiga baris yang mungkin: Tiga baris, tiga kolom, dan dua diagonal.
  • Program ini juga harus dapat menentukan kapan permainan itu imbang - yaitu, ketika semua sembilan kotak telah dimainkan dan tidak ada pemain yang menang.

  • Pada saat bersamaan, program harus mengelola rincian interaksi dengan pengguna dengan meminta pengguna untuk memasukkan langkahnya, mengumumkan permainan komputer, menampilkan perwakilan dewan yang diperbarui setelah setiap permainan, dan mengumumkan pemenang atau mengumumkan hasil imbang saat pertandingan usai..

Dalam tantangan ini, Anda diminta untuk memisahkan kedua unsur program Tic-Tac-Toe ini: bagian dari e program yang mengelola status dan kemajuan permainan dan bagian dari program yang menangani interaksi dengan pengguna. Anda akan melakukannya dengan membuat kelas bernama TicTacToeBoard yang menyediakan metode yang bisa dipanggil untuk memainkan game yang lengkap. Kemudian, Anda diminta untuk menulis sebuah program yang menggunakan kelas TicTacToeBoard untuk memungkinkan lawan manusia memainkan permainan Tic-Tac-Toe melawan komputer. Dari perspektif pengguna, program ini akan beroperasi secara identik dengan program yang dibuat untuk mengatasi tantangan permainan Tic-Tac-Toe yang sederhana, dengan satu perbedaan: Untuk versi permainan ini, program ini membuat usaha yang tidak tepat menuju strategi saat menentukan gerakan komputer.Komputer tidak bermain dengan sempurna, jadi masih mudah dipadamkan. Tapi itu membuat beberapa usaha di luar hanya bermain di alun-alun kosong pertama yang dilihatnya.

Tabel berikut mencantumkan metode yang harus diterapkan oleh kelas TicTacToeBoard. Ingat, Anda perlu membuat dua. file java untuk mengatasi tantangan ini. Yang pertama, TicTacToeBoard. java, menerapkan kelas TicTacToeBoard. Yang kedua, bernama hanya TicTacToe. java, adalah program yang akan dijalankan pengguna untuk bermain game Tic-Tac-Toe melawan komputer.

Kelas TicTacToeBoard

Konstruktor

Deskripsi
TicTacToeBoard Membuat TicTacToeBoard baru dengan semua kotak kosong.
Metode Deskripsi
void reset () Menyetel ulang status setiap kotak menjadi kosong.
int getSquare (String square) Mengembalikan status kuadrat yang ditentukan oleh kuadrat, yang harus merupakan salah satu senar A1, A2, A3, B1, B2, B3, C1, C2, atau C3. Mengembalikan 0 jika kotak kosong, 1 jika berisi X, dan 2 jika berisi O. Throws IllegalArgumentException jika kotak bukan merupakan salah satu nilai yang diijinkan. Menandai kotak yang ditentukan (A1, A2, A3, B1, B2, B3, C1, C2, atau C3) untuk pemain yang ditentukan (1 untuk X, 2 untuk HAI). Melempar IllegalArgumentException jika kotak bukan salah satu nilai yang diijinkan, pemain tidak 1 atau 2, atau kotak yang ditentukan tidak kosong.
int isGameOver () Menentukan apakah permainan telah selesai. Mengembalikan 0 jika permainan belum berakhir, 1 jika X telah memenangkan pertandingan, 2 jika O telah memenangkan pertandingan, dan 3 jika permainan itu imbang. Kondisi akhir permainan adalah sebagai berikut:
1: Jika ada baris, kolom, atau diagonal berisi semua Xs. 2: Jika ada baris, kolom, atau diagonal berisi semua Os.
3: Jika tidak ada kotak kosong dan X maupun O tidak pernah menang. int getNextMove ()

Mengembalikan bilangan bulat yang mewakili langkah selanjutnya untuk lawan komputer. Metode ini harus membuat usaha yang tidak tepat untuk memilih langkah yang baik, sesuai dengan strategi berikut:

* Jika pusat (B2 persegi) kosong, mainkan kotak tengah.

Jika pusatnya tidak kosong, namun ada empat sudutnya (kotak A1, A3, C1, atau C3) kosong, putar salah satu sudutnya (tidak masalah).

* Jika bagian tengahnya tidak kosong dan tidak ada sudut yang kosong, putar salah satu ujungnya (kotak A2, B1, B3, atau C2). String toString ()

Mengembalikan string yang mewakili status papan saat ini. String mencakup karakter baris baru untuk menampilkan baris, serta garis pemisah pada garis konsol terpisah, seperti pada contoh ini:

O | | O

- | - | -

| X | - | - | -

| X |

Jika Anda bingung, Anda dapat menemukan solusinya di tab Unduhan halaman produk

Java All-in-One For Dummies,

4th Edition.

semoga berhasil!

Java Programming Challenge: Menambahkan Kelas ke Program Tic-Tac-Toe yang Sederhana

Pilihan Editor

Bagaimana Menutup presentasi PowerPoint 2007 Presentation - dummies

Bagaimana Menutup presentasi PowerPoint 2007 Presentation - dummies

Menutup presentasi PowerPoint seperti memasukkannya ke dalam folder, dan menyimpan folder di laci yang tepat. Ada tiga cara yang berbeda untuk menutup presentasi PowerPoint:

Bagaimana Bandingkan Fitur PowerPoint 2013 Presentation - dummies

Bagaimana Bandingkan Fitur PowerPoint 2013 Presentation - dummies

Bandingkan fitur di PowerPoint 2013 memungkinkan Anda membandingkan perbedaan antara dua versi dari sebuah presentasi dan menerima atau menolak perbedaan. Fitur ini berguna jika Anda telah mengirimkan salinan presentasi ke reviewer dan Anda ingin secara selektif menggabungkan perubahan resensi. Menggunakan fitur Compare sangatlah mudah. Berikut adalah ...

Bagaimana Mengompres Gambar Anda di PowerPoint 2013 - dummies

Bagaimana Mengompres Gambar Anda di PowerPoint 2013 - dummies

PowerPoint 2013 mencakup perintah Compress Pictures yang dapat menghilangkan detail asing di gambar Anda dan dengan demikian mengurangi ukuran file presentasi Anda. Untuk menghemat lebih banyak ruang, perintah Compress Pictures juga akan menghapus bagian gambar Anda yang telah dipotong. Anda bisa menggunakan perintah ini untuk memampatkan hanya satu ...

Pilihan Editor

Cara Menggunakan NaturallySpeaking dengan Kotak Dialog Umum - dummies

Cara Menggunakan NaturallySpeaking dengan Kotak Dialog Umum - dummies

Secara alamiSpeaking dapat membantu Anda mengendalikan kotak dialog. Ini adalah & ldquo; Lihat Ma, tidak ada tangan & rdquo; contoh. Semuanya dilakukan dengan perintah suara. Tentu, terkadang Anda bisa menyelesaikan tugas lebih cepat dengan mematuk kunci atau menggerakkan mouse Anda. Seiring waktu, Anda akan menyelesaikan kompromi Anda sendiri antara perintah suara dan perintah mouse dan keyboard. Untuk pencarian berikut, NaturallySpeaking ...

Bagaimana Menggunakan "Klik" Command di NaturallySpeaking - dummies

Bagaimana Menggunakan "Klik" Command di NaturallySpeaking - dummies

Para insinyur di Nuance dapat ' t mengantisipasi setiap perintah yang mungkin digunakan oleh aplikasi nyasar, jadi mereka telah melakukan hal terbaik berikutnya: Mereka membuat perintah "Klik" untuk mengubah menu aplikasi menjadi perintah suara. Begini cara menggunakannya: Katakan, "Klik " untuk memperluas menu. Setiap judul yang muncul pada aplikasi ...

Bagaimana Menggunakan Mikrofon Profesional Naga Secara Pribadi:" Apakah Hal Ini Aktif? " - dummies

Bagaimana Menggunakan Mikrofon Profesional Naga Secara Pribadi:" Apakah Hal Ini Aktif? " - dummies

Dapat menjadi lucu saat Anda menyadari bahwa mikrofon Profesional Dragon Professional Anda telah berada di sepanjang waktu Anda menerima telepon terakhir Anda. Kata-kata yang Anda didiktekan tidak akan terlihat seperti apa yang Anda katakan. Ada jeda; Anda membuang muka dan mungkin mikrofon ditekan di bawah dagu Anda. Segera hapus ...

Pilihan Editor

10 Hal yang sering terjadi pada PowerPoint 2016 - dummies

10 Hal yang sering terjadi pada PowerPoint 2016 - dummies

Jumlah sebenarnya dari hal-hal yang dapat terjadi Salah saat bekerja dengan PowerPoint 2016 mungkin mendekati 10.000, tapi sepuluh di antaranya adalah yang paling sering salah. Anda tidak dapat menemukan file Anda Entah Anda menyimpan file dalam folder yang berbeda, atau Anda menggunakan nama file yang berbeda untuk menyimpannya ...

Menerapkan Style to a Table pada PowerPoint 2007 - dummies

Menerapkan Style to a Table pada PowerPoint 2007 - dummies

Setelah Anda membuat sebuah tabel di slide PowerPoint, gunakan kontrol di bawah Table Tools pada PowerPoint Ribbon untuk memformatnya. PowerPoint menawarkan beberapa gaya tabel yang telah ditentukan. Sebelum Anda menerapkan sebuah gaya, gunakan kotak centang yang muncul di sisi kiri tab Desain di bawah Table Tools on the Ribbon. Header ...

5 Trik bagus untuk PowerPoint 2016 - dummies

5 Trik bagus untuk PowerPoint 2016 - dummies

Ada banyak hal yang menyukai PowerPoint 2016, terutama jika Anda tahu caranya untuk menggunakan semua lonceng dan peluit. Berikut adalah beberapa tip dan trik yang perlu diingat: Skala ukuran slide ke dimensi monitor Ada dua rasio aspek dasar untuk layar komputer: standar (4: 3) dan lebar (16: 9). Angka-angka ini ...