猜數字小遊戲是一定是大家學習C語言程式設計的第一個或者是前幾個小小項目了吧,今天,我們使用Java進行猜數字小遊戲的實作
有對猜數字小遊戲的基本思想不清楚的可以看這篇部落格,裡面是用C語言進行的實作以及相關講解
c語言猜數字小遊戲
話不多說,上代碼
import java.util.Random;
import java.util.Scanner;
class Game {
// 開始菜單
public void menu() {
System.out.println("*******************************************************************");
System.out.println("************************* 猜數字小遊戲 *****************************");
System.out.println("******************** 0. 退出遊戲 1. 開始遊戲 *********************");
System.out.println("*******************************************************************");
}
// 生成随機數
public int random() {
Random random = new Random();
return random.nextInt()+;
}
// 判斷輸入數字與随機數之間的關系,大于傳回大于0,小于傳回小于0,等于傳回0
public int compare(int num, int random) {
return num-random;
}
// 根絕 compare 傳回的值輸出提示語句,并傳回接下來是否繼續進行, 猜對了傳回1,遊戲結束,猜錯了傳回0,遊戲繼續
public int message(int compare) {
if(compare > ) {
System.out.println("太大了");
return ;
} else if(compare < ) {
System.out.println("太小了");
return ;
} else {
System.out.println("猜對了");
return ;
}
}
// 接受stdin輸入的字元,傳回為對應數字
public int scanf() {
System.out.print("請輸入:>");
Scanner input = new Scanner(System.in);
String str = input.next();
int num = Integer.parseInt(str);
return num;
}
// 邏輯函數
public void realGame() {
int num = ;
int flag = ;
do {
menu();
flag = scanf();
switch(flag) {
case : {// 開始遊戲
int random = this.random();
System.out.println(random);
num = this.scanf();
while(message(compare(num, random)) == ) {
num = this.scanf();
}
flag = ;
}
break;
case : {
flag = ;
System.out.println("遊戲退出");
}
break;
default: {
System.out.println("請輸入正确選項");
flag = ;
}
break;
}
}while(flag == );
}
}
class PlayGame {
// 在構造方法裡列印遊戲開始菜單
private Game game = new Game();
// 調用Game類中的遊戲方法
public void start() {
game.realGame();
}
}
public class Day5 {
public static void main(String[] args) {
/* System.out.println("input");
if( str.equals("0")) {
System.out.println(str);
} else {
System.out.println("hah");
} */
PlayGame game = new PlayGame();
game.start();
}
}