本次任務要求為某商場開發一套幸運抽獎系統,客戶必須首先註冊成為該商場會員,會員登錄成功後,就可以參加抽獎活動了。
註冊
用戶選擇“註冊”菜單,進入註冊界面。輸入用戶名和密碼後,系統提示註冊成功,並給出會員卡號。
登入
註冊成功後,用戶選擇“登錄”菜單,進入登錄界面。輸入註冊時的用戶名和密碼。登錄成功,系統提示歡迎信息。如果用戶和密碼輸入錯誤,提示用戶繼續輸入,最多有3次機會。
抽獎
登錄成功後,用戶選擇“抽獎”菜單,進入幸運抽獎界面。輸入會員卡號,系統生成5個4位隨機數作為幸運數字。如果會員卡號是其中之一,則成為本日幸運會員。
原始碼
package cn.jbit.dlc1;import java.util.Scanner;public class LuckyNumber5 { /** * 幸運抽獎*/ public static void main(String[] args) { String answer = "y"; // 標識是否繼續String userName = ""; // 用戶名String password = ""; // 密碼int cardNumber = 0; // 卡號boolean isRegister = false; // 標識是否註冊boolean isLogin = false; // 標識是否登錄int max = 9999; int min = 1000; Scanner input = new Scanner(System.in); do { System.out.println("*****歡迎進入獎客富翁系統*****"); System.out.println("/t1.註冊"); System.out.println("/t2.登錄"); System.out.println("/t3.抽獎"); System.out.println("***************************"); System.out.print("請選擇菜單:"); int choice = input.nextInt(); switch (choice) { case 1: System.out.println("[獎客富翁系統> 註冊]"); System.out.println("請填寫個人註冊信息:"); System.out.print("用戶名:"); userName = input.next(); System.out.print("密碼:"); password = input.next(); // 獲取4位隨機數作為卡號cardNumber = (int)(Math.random()*(max-min))+min; System.out.println("/n註冊成功,請記好您的會員卡號"); System.out.println("用戶名/t密碼/t會員卡號"); System.out.println(userName + "/t" + password + "/t" + cardNumber); isRegister = true; // 註冊成功,標誌位設置為true break; case 2: System.out.println("[獎客富翁系統> 登錄]"); if (isRegister) { // 判斷是否註冊// 3次輸入機會for (int i = 1; i <= 3; i++) { System.out.print("請輸入用戶名:"); String inputName = input.next(); System.out.print("請輸入密碼:"); String inputPassword = input.next(); if (userName.equals(inputName) && password.equals(inputPassword)) { System.out.println("/n歡迎您:" + userName); isLogin = true; // 登錄成功,標誌位設置為true break; } else if (i < 3) { System.out.println("用戶名或密碼錯誤,還有" + (3 - i) + "次機會!"); } else { System.out.println("您3次均輸入錯誤!"); } } } else { System.out.println("請先註冊,再登錄!"); } break; case 3: System.out.println("[獎客富翁系統> 抽獎]"); if (!isLogin) { // 判斷是否登錄System.out.println("請先登錄,再抽獎!"); System.out.println("繼續嗎?(y/n)"); answer = input.next(); } else { //生成5個4位隨機數字,並保存在數組中int[] luckynums = new int[5]; for(int i = 0; i < luckynums.length; i++){ luckynums[i] = (int)(Math.random()*(max-min))+min; } System.out.print("請輸入您的卡號:"); int yourcard = input.nextInt(); int i; System.out.print("/n本日的幸運數字為:"); for (i = 0; i < luckynums.length; i++) { System.out.print(luckynums[i] + " "); } for (i = 0; i < luckynums.length; i++) { if (luckynums[i] == yourcard) { System.out.println("/n恭喜!您是本日的幸運會員!"); break; } } if (i == luckynums.length) { System.out.println("/n抱歉!您不是本日的幸運會員!"); } } break; default: System.out.println("[您的輸入有誤!]"); break; } System.out.print("繼續嗎?(y/n):"); answer = input.next(); System.out.println(""); } while ("y".equals(answer)); if ("n".equals(answer)) { System.out.println("系統退出,謝謝使用!"); } }}只是一個基本的小的架構,還有許多可以完善的地方,希望對您有一定的幫助。