查看: 934|回复: 2
|
JAVA。。。。。。。
[复制链接]
|
|
Overviu
“Valley Game” ialah suatu permainan mudah. Dua pemain akan mengambil bahagian
dengan menukar giliran. Bagi setiap giliran, pemain yang terlibat akan melontar dadu
(yang mempunyai 6 bahagian) sebanyak yang diingini atau sehingga nombor 1
dilontarkan. Setiap nombor dadu yang dilontarkan, kecuali 1, akan ditambah ke dalam
skor bagi giliran tersebut. Sekiranya dadu bernombor 1 dilontarkan, skor 0 akan
diberikan untuk giliran berkenaan dan gilirannya akan ditamatkan. Di setiap penghujung
giliran, skor untuk giliran berkenaan akan ditambahkan kepada skor keseluruhan
pemain berkenaan. Pemain pertama yang mendapat skor 100 atau lebih akan menjadi
pemenangnya.
Contoh:
· Alice melontar 3, 5, 3, 6, dan berhenti. Skornya ialah 19.
· Bob melontar 5, 4, 6, 6, 2, dan berhenti. Skornya ialah 23.
· Alice melontar 5, 3, 3, 5, 4, dan berhenti. Skornya sekarang ialah 39 (19 + 20).
· Bob melontar 4, 6, 1. Dia terpaksa berhenti, dan skornya tetap 23(23 + 0).
· dan seterusnya
Tugas anda ialah untuk melaksanakan permainan “Valley Game”. Anda akan bermain
menentang komputer. Komputer akan sentiasa bertindak sebagai pemain pertama.
Maklumat Terperinci
Aturcara anda harus mempunyai empat kelas: Valley, Player, Human dan Komputer.
Metod main akan dimasukkan di dalam kelas Valley; ianya akan mencipta Human dan
Komputer (setiap satu adalah berjenis Player), menukar giliran sesama mereka
(Komputer akan memulakan permainan) dan menentukan sama ada permainan telah
tamat dan menentukan pemenangnya. Di penghujung setiap permainan, ianya akan
meminta pemain “manusia” sama ada ingin bermain sekali lagi.
Kelas Player akan mempunyai atribut dan metod yang umum untuk kedua-dua pemain.
Secara spesifik, ianya adalah:
· int score – atribut untuk menyimpan skor terkini pemain
· metod int getScore() – untuk membolehkan objek lain mendapatkan skor
pemain
· metod int rollDie() – untuk melontar dadu dan memulangkan keputusannya.
Nombor Rawak
Untuk mensimulasikan nombor rawak, import java.util.Random (ke dalam kelas
Player), istiharkan pembolehubah static berjenis Random, dan cipta objek Random
untuknya. (Ianya berjenis static kerana kita hanya memerlukan satu dadu sahaja).
Pengistiharannya adalah seperti berikut:
static Random random = new Random();
Anda boleh mendapatkan nombor rawak dari pembolehubah random dengan menghantar
mesej nextInt kepadanya. Anda juga perlu memberikan nombor positif sebagai
parameter. Dengan berbuat demikian, random akan memulangkan secara rawak suatu
nombor integer yang menyamai atau melebihi 0 tetapi kurang daripada nombor di dalam
parameter. Sebagai contoh, random.nextInt(3) akan memulangkan salah satu nombor
daripada 0,1 atau 2. Di dalam kes dadu yang mempunyai 6 nombor, anda boleh
gunakan pengistiharan berikut:
dieRoll = random.nextInt(6) + 1;
public class Valley {
// masukkan atribut di sini …
public static void main(String[] args) {
new Valley().playGame();
}
void playGame() {
// masukkan kod anda di sini...
}
}
Kedua-dua Human dan Komputer perlu mewarisi Player dan harus mempunyai metodmetod
tambahan berikut:
· void takeTurn() – untuk melontar dadu seberapa banyak kali yang
dikehendaki dan menyimpan skornya
· void printScore() – untuk memaparkan skor pemain berkenaan
Kelas Human juga harus meminta “pemain manusia” soalan (dengan jawapan ya/tidak)
sama ada pemain ingin melontar semula dadu. Untuk tujuan ini, satu lagi metod perlu
dimasukkan untuk mendapatkan respon ya/tidak daripada pemain manusia.
Gunakan kreativiti anda di dalam membangunkan aturcara permainan “Valley”
yang menarik dengan strategi yang mantap. Aturcara anda TIDAK PERLU
menggunakan antara muka bergrafik (GUI), memadai menggunakan persekitaran
DOS sahaja.
各为有谁会 呢 ? 帮帮忙。。。 TQ |
|
|
|
|
|
|
|
发表于 6-11-2007 08:52 PM
|
显示全部楼层
这是中文论坛,请用中文发表。
注:别一味只要求答案或是问谁会/请人帮忙,自己试试看吧。
还有,这问题不属于网页研发。 |
|
|
|
|
|
|
|

楼主 |
发表于 7-11-2007 01:49 PM
|
显示全部楼层
回复 #2 檞寄生 的帖子
TMD 你 , CCB 路 , KNS HANG 。。。。。。 |
|
|
|
|
|
|
| |
本周最热论坛帖子
|