所有新聞群組討論區列表 風禹科技驗證有限公司 Web News Reader

目前新聞群組:tw.bbs.comp.oop

項目 內容
發文者 Peter
日期 2007/6/25 上午 12:52:48
標題 踩地雷遊戲
Message Id 4UcEI0$rOq@whshs.cs.nccu.edu.tw
內文 我們學校是用JCreator寫的 目前程式碼如下 還要加或改什麼才能正常執行呢? =================================== class MineBox { int bState; //格子內容值 boolean isOpened; //格子是否翻開 MineBox() //建構式 { //設初值 } void show() //顯示單一格子 { //顯示內容或# } int hit() { //設定翻開並傳回內容值 } } class MineGame { MineBox[][]mMap; //地雷地圖 int bx, by; //地圖邊界 int mineNum; //地雷個數 int openCnt; //翻開格子數 MineGame(int ibx, int iby) //建構式 { bx=ibx; by=iby; openCnt=0; //設定地雷個數 mMap=new MineBox[bx][by]; for(int fx=0;fx=bx||iy<0||iy>=by) return false; //超出邊界傳出假 else return true; //界內傳真 } void randomMine() //亂數設定地雷 { //連續擺放mineNum個地雷 for(int i=0;i<10000;i++) { //亂數產生兩座標 //交換兩座標格子之bState } for(int fx=0;fx0) return true; //沒事傳回真(1~8) else //0就要遞迴呼叫 { for(int fx=ix-1;fx<=ix+1;fx++) //掃描對應九宮格 for(int fy=iy-1;fy<=ix+1;fy++) { //超出邊界的格式需略過 hitBox(fx,fy); //遞迴呼叫 } return true; //沒事傳回真(0) } } boolean play() //開始玩,贏傳真,輸傳假 { while(openCnt<(bx*by-mineNum)) //當已翻開格子小於應翻開格子時 { //讓使用者輸入座標 //解釋成(hx,hy) if(!hitBox(int hx,int hy)) //如果點到地雷 { //翻開所有MineBox showMap(); return false; } showMap(); } return true; } } class PlayMG { public static void main(String[] args) { MineGame mg=new MineGame(18,9); //設定地圖18*9 if(mg.play()) //如果玩了以後傳回真 System.out.println("Congratulation!!"); //掃雷成功 else System.out.println("Oh Oh!!"); //踩到地雷 } } -- ╔═══╗ ┼────────────────────────╮ ║狂狷 ║ │* Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮ ║ 年少║ ┼╮ < IP:140.119.164.252 > ╰─╮ ╚╦═╦╝  ╰  * From:61-59-214-158.adsl.static.seed.net.tw   ─╨─╨─ KGBBS ─ ◎ 遨翔"BBS"的狂狷不馴;屬於年少的輕狂色彩 ◎ 

基本條件

.Net 原始碼 | ASP.NET News Reader Beta 0.2.9

請參閱

個人資料 | 發表新文章 | 回覆 | 回信 | 轉寄 | 同標題 | 搜尋 | 列印 預覽 直接

重要訊息通知

2007/06/21 由於微軟新聞伺服器移除多數新聞群組 (newsgroup),目前遭移除之群組暫時改為隱藏純瀏覽,若狀況已定案時,將會將隱藏中的群組重新調整。[討論]