一、選擇遊戲
需求說明:使用者進入遊戲平臺後,可以選擇喜愛的遊戲
提示:使用Switch選擇結構
package com.future.game;import java.util.Scanner;public class Game { static Scanner input = new Scanner(System.in); public static void main(String[] args) { optGame(); } public static void optGame() { System.out.println("歡迎進入迷你遊迷你戲平臺\n"); System.out.println("請選擇您喜愛的遊戲:\n"); System.out.println("*******************************"); System.out.println("\t1.鬥地主"); System.out.println("\t2.鬥牛"); System.out.println("\t3.泡泡龍"); System.out.println("\t4.連連看"); System.out.println("*******************************\n"); int choice; // 使用者選擇 boolean isRight; // 輸入是否正確 System.out.print("請選擇,輸入數字:"); do { isRight = true; choice = input.nextInt(); switch (choice) { case 1: System.out.println("您已進入鬥地主房間!"); break; case 2: System.out.println("您已進入鬥牛房間!"); break; case 3: System.out.println("您已進入泡泡龍房間!"); break; case 4: System.out.println("您已進入連連看房間!"); break; default: System.out.print("輸入錯誤,請重新輸入數字:"); isRight = false; break; } } while (!isRight); }}
二、玩遊戲晉級
需求說明:
使用者玩遊戲,每次玩5局,不足5局則不能晉級。
在5局遊戲中,如果80%達到80分以上,為一級,如果60%達到80分以上為二級,
否則不能晉級
提示:使用迴圈實現玩5局遊戲,使用break語句實現中途退出遊戲 使用多重if,根據遊戲得分判斷是否晉級
// 需求說明:// 使用者玩遊戲,每次玩5局,不足5局則不能晉級。// 在5局遊戲中,如果80%達到80分以上,為一級,如果60%達到80分以上為二級,// 否則不能晉級 public static void playGame() { int n = 1; int count = 0; // 計數 int score = 0; // 遊戲成績 String answer; System.out.println("迷你遊戲平臺 > 遊戲晉級\n"); do { System.out.print("您正在玩第" + n + "局,成績為: "); score = input.nextInt(); if (score > 80) { count++; } n++; if (n > 5) { System.out.print("遊戲結束"); } else { System.out.print("繼續玩下一局嗎?(yes/no) "); answer = input.next(); if (answer.equals("no")) { System.out.print("您已經中途退出遊戲。"); break; } else { System.out.println("進入下一局"); } } } while (n <= 5); double rate = count / 5.0; // 計算達到80分之上的比率 if (n > 5) { if (rate > 0.9) { System.out.println("\n恭喜!透過一級"); } else if (rate > 0.6) { System.out.println("\n透過二級,繼續努力!"); } else { System.out.println("\n對不起,您未能晉級,繼續加油啊!"); } } else { System.out.println("\n對不起,您未能晉級,繼續加油啊!"); } }
三、玩遊戲並支付遊戲幣
需求說明:
根據遊戲型別和遊戲時長計算應支付的遊戲幣
遊戲型別分為兩大類:牌類和休閒競技類
遊戲的收費標準:牌類:10元/小時和休閒競技類:20元/小時
遊戲的收費規則
遊戲時間超過10小時,可以打5折10小時及以下,打8折
// 根據遊戲型別和遊戲時長計算應支付的遊戲幣// 遊戲型別分為兩大類// 牌類和休閒競技類// 遊戲的收費標準// 牌類:10元/小時// 休閒競技類:20元/小時// 遊戲的收費規則// 遊戲時間超過10小時,可以打5折10小時及以下,打8折 public static void payGame() { System.out.println("迷你遊戲平臺 > 遊戲幣支付\n"); System.out.println("請選擇您玩的遊戲型別:"); System.out.println("\t1.牌類"); System.out.println("\t2.休閒競技類"); int choice = input.nextInt(); System.out.println("請您輸入遊戲時長:"); int time = input.nextInt(); int qm = 0; switch (choice) { case 1: if (time > 10) { System.out.println("您玩的是牌類遊戲,時長是:" + time + "小時,可以享受5折優惠"); qm = (int) (10 * time * 0.5); System.out.println("您需要支付" + qm + "個遊戲幣"); } else { System.out.println("您玩的是牌類遊戲,時長是:" + time + "小時,可以享受8折優惠"); qm = (int) (10 * time * 0.8); System.out.println("您需要支付" + qm + "個遊戲幣"); } break; case 2: if (time > 10) { System.out.println("您玩的是休閒競技類遊戲,時長是:" + time + "小時,可以享受5折優惠"); qm = (int) (20 * time * 0.5); System.out.println("您需要支付" + qm + "個遊戲幣"); } else { System.out.println("您玩的是休閒競技類遊戲,時長是:" + time + "小時,可以享受8折優惠"); qm = (int) (20 * time * 0.8); System.out.println("您需要支付" + qm + "個遊戲幣"); } break; default: System.out.print("無效選擇"); } }
四、統計遊戲點選率
提示:使用if結構、continue語句統計點選率100以上的遊戲數量
//需求說明:錄入遊戲的點選率,統計點選率超過100的遊戲所佔的比例 public static void gameDot() { int score; // 點選率 int num = 0; // 點選率大於100的遊戲數量 System.out.println("迷你遊戲平臺 > 遊戲點選率\n"); for (int i = 0; i < 4; i++) { System.out.print("請輸入第" + (i + 1) + "個遊戲的點選率: "); score = input.nextInt(); if (score > 100) { num++; } } System.out.println("點選率大於100的遊戲數是: " + num); double rate = (double) num / 4 * 100; System.out.println("點選率大於100的遊戲所佔的比例為:" + rate + "%"); }
五、新增使用者資訊
需求說明:
為了維護使用者資訊,需要將其資訊錄入系統中
使用者的資訊包括:使用者編號、年齡、積分
要求年齡在10歲以上
// 需求說明:// 為了維護使用者資訊,需要將其資訊錄入系統中// 使用者的資訊包括:使用者編號、年齡、積分// 要求年齡10歲以上 public static void addUser() { int custNo = 0; //使用者編號 int age; //年齡 int points = 0; //積分 System.out.println("請輸入要錄入使用者的數量:"); int count=input.nextInt(); //迴圈錄入使用者資訊 for(int i=0;i<count;i++){ System.out.print("請輸入使用者編號(<4位整數>):"); custNo = input.nextInt(); System.out.print("請輸入使用者年齡:"); age = input.nextInt(); if(age<10 || age>100){ //年齡不合適則跳出 System.out.println("很抱歉,您的年齡不適宜玩遊戲"); System.out.println("錄入資訊失敗\n"); continue; } System.out.print("請輸入會員積分:"); points = input.nextInt(); System.out.println("您錄入的會員資訊是:"); System.out.println("使用者編號:"+custNo+ "\t年齡:" +age+ "\t積分:" +points+ "\n"); } }
最新評論