java實(shí)現(xiàn)幸運(yùn)抽獎(jiǎng)功能
本文實(shí)例為大家分享了java實(shí)現(xiàn)幸運(yùn)抽獎(jiǎng)功能的具體代碼,供大家參考,具體內(nèi)容如下
本系統(tǒng)較為簡單,未使用是什么多的算法,也未添加保存文件讀取文件功能,
1、任務(wù)
模擬注冊登錄幸運(yùn)抽獎(jiǎng)全過程
2、主要功能:
1.注冊
2.登錄
3.退出登錄
4.抽獎(jiǎng)
5.退出系統(tǒng)
首頁:
1.輸出菜單
2.選擇菜單編號(hào)
3.如果編號(hào)選擇錯(cuò)誤,輸出“您的輸入有誤!”
注冊:
1.輸入用戶名和密碼,系統(tǒng)產(chǎn)生4位隨機(jī)數(shù)作為卡號(hào)。
2.注冊成功,輸出用戶信息
登錄:
1.輸入注冊時(shí)的用戶名和密碼,登錄成功,系統(tǒng)提示登陸成功。
2.如果用戶名和密碼輸入錯(cuò)誤,提示用戶繼續(xù)輸入。
退出登錄:
1.若用戶已登錄則退出登錄
2.若用戶未登錄則顯示您未登錄,
抽獎(jiǎng):
1.輸入會(huì)員卡號(hào),系統(tǒng)生成5個(gè)4位隨機(jī)數(shù)作為幸運(yùn)數(shù)字
2.如果會(huì)員卡號(hào)是其中之一,則成為本日幸運(yùn)會(huì)員;否則不是幸運(yùn)會(huì)員
退出系統(tǒng):
若用戶想結(jié)束對本系統(tǒng)的使用可退出系統(tǒng),結(jié)束程序。
代碼實(shí)現(xiàn):
import java.util.Scanner;
?
class User{//用戶
? ? String name;
? ? String password;
? ? int cardid;
? ? User(String name,String password){
? ? ? ? this.name=name;
? ? ? ? this.password=password;
? ? ? ? cardid=(int)(Math.random()*9000+1000);
? ? }
? ? String getName(){
? ? ? ? return name;
? ? }
? ? String getPassword(){
? ? ? ? return password;
? ? }
? ? int getCardid(){
? ? ? ? return cardid;
? ? }
}
public class Lottery {//抽獎(jiǎng)系統(tǒng)
?
? ? public static void main(String[] args) {//main方法
? ? ? ? User[]user=new User[10];
? ? ? ? int total=0;//注冊人數(shù)
? ? ? ? int j=0;//是否退出系統(tǒng)
? ? ? ? int x=0;//登錄狀態(tài),默認(rèn)未登錄
? ? ? ? int y=-1;//當(dāng)前登錄用戶元素
? ? ? ? do {
? ? ? ? ? ? System.out.println("*****歡迎進(jìn)入幸運(yùn)抽獎(jiǎng)系統(tǒng)*****");
? ? ? ? ? ? System.out.println("\t1、注冊");
? ? ? ? ? ? System.out.println("\t2、登錄");
? ? ? ? ? ? System.out.println("\t3、退出登錄");
? ? ? ? ? ? System.out.println("\t4、抽獎(jiǎng)");
? ? ? ? ? ? System.out.println("\t5、退出系統(tǒng)");
? ? ? ? ? ? System.out.print("\t請選擇:");
? ? ? ? ? ? int choice;
? ? ? ? ? ? Scanner reader=new Scanner(System.in);
? ? ? ? ? ? choice=reader.nextInt();
?
? ? ? ? ? ? switch (choice){
? ? ? ? ? ? ? ? case 1:
? ? ? ? ? ? ? ? ? ? if (x==0)
? ? ? ? ? ? ? ? ? ? total = getTotal(user, total);
? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您正在登錄中,請先退出登錄再注冊!\n");
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 2:
? ? ? ? ? ? ? ? ? ? if (x==0) {
? ? ? ? ? ? ? ? ? ? ? ? int i = 0;
? ? ? ? ? ? ? ? ? ? ? ? do {
? ? ? ? ? ? ? ? ? ? ? ? ? ? y = toLogin(user, total);
? ? ? ? ? ? ? ? ? ? ? ? ? ? if (y==-1) {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您的輸入有誤,請重新輸入!\n");
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? i = 1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? }else {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? x = 1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? i=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? ? ? } while (i == 1);
? ? ? ? ? ? ? ? ? ? }else
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您正在登錄中!\n");
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 3:
? ? ? ? ? ? ? ? ? ? if (x==1){
? ? ? ? ? ? ? ? ? ? ? ? x=0;
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("退出登錄成功!\n");
? ? ? ? ? ? ? ? ? ? }else
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您未登錄,請先登錄!\n");
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 4:
? ? ? ? ? ? ? ? ? ? if (x==1){
? ? ? ? ? ? ? ? ? ? ? ? toLottery(user, y);
? ? ? ? ? ? ? ? ? ? }else
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您未登錄,請先登錄!\n");
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 5:
? ? ? ? ? ? ? ? ? ? j=1;
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? default:
? ? ? ? ? ? ? ? ? ? System.out.println("您的輸出有誤,請重新輸入!\n");
? ? ? ? ? ? }
? ? ? ? }while(j!=1);
? ? }
?
? ? private static void toLottery(User[] user, int y) {//抽獎(jiǎng)方法
? ? ? ? int j=0;
? ? ? ? System.out.println("本日幸運(yùn)會(huì)員卡號(hào)為:");
? ? ? ? int cardid[]=new int[5];
? ? ? ? cardid[0]=(int)(Math.random()*9000+1000);
? ? ? ? cardid[1]=(int)(Math.random()*9000+1000);
? ? ? ? cardid[2]=(int)(Math.random()*9000+1000);
? ? ? ? cardid[3]=(int)(Math.random()*9000+1000);
? ? ? ? cardid[4]=(int)(Math.random()*9000+1000);
? ? ? ? for (int i=0;i<5;i++){
? ? ? ? ? ? System.out.print(cardid[i]+" ?");
? ? ? ? ? ? if(user[y].getCardid()==cardid[i]){
? ? ? ? ? ? ? ? j=1;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? System.out.println("\n您的會(huì)員卡號(hào)為:\n"+user[y].getCardid());
? ? ? ? if (j==1)
? ? ? ? ? ? System.out.println("恭喜您,成為本日的幸運(yùn)會(huì)員!\n");
? ? ? ? else
? ? ? ? ? ? System.out.println("很遺憾,您不是本日幸運(yùn)會(huì)員!\n");
? ? }
?
? ? private static int toLogin(User[] user, int total) {//登錄方法
? ? ? ? Scanner reader=new Scanner(System.in);
? ? ? ? System.out.print("請輸入您的用戶名:");
? ? ? ? String name= reader.nextLine();
? ? ? ? System.out.print("請輸入您的密碼:");
? ? ? ? String password= reader.nextLine();
? ? ? ? int j=-1;
? ? ? ? for (int i = 0; i< total; i++) {
? ? ? ? ? ? if (name.equals(user[i].getName())) {
? ? ? ? ? ? ? ? if (password.equals(user[i].getPassword())) {
? ? ? ? ? ? ? ? ? ? System.out.println("登陸成功!");
? ? ? ? ? ? ? ? ? ? System.out.println("用戶名:"+name+"\n密碼:"+password+"\n會(huì)員號(hào):"+user[i].getCardid()+"\n");
? ? ? ? ? ? ? ? ? ? j=i;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? return j;
? ? }
? ? private static int getTotal(User[] user, int total) {//注冊方法
? ? ? ? Scanner reader=new Scanner(System.in);
? ? ? ? System.out.print("請輸入您的用戶名:");
? ? ? ? String name= reader.nextLine();
? ? ? ? System.out.print("請輸入您的密碼:");
? ? ? ? String password= reader.nextLine();
? ? ? ? for (int i=0;i<total;i++) {
? ? ? ? ? ? if (name.equals(user[i].getName())) {
? ? ? ? ? ? ? ? System.out.println("用戶名已存在,請重新輸入!\n");
? ? ? ? ? ? ? ? return total;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? user[total]=new User(name,password);
? ? ? ? System.out.println("用戶名:"+name+"\n密碼:"+password+"\n會(huì)員號(hào):"+user[total].getCardid()+"\n");
? ? ? ? total++;
? ? ? ? return total;
? ? }
}



以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
spring-cloud-gateway動(dòng)態(tài)路由的實(shí)現(xiàn)方法
這篇文章主要介紹了spring-cloud-gateway動(dòng)態(tài)路由的實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01
java底層JDK?Logging日志模塊處理細(xì)節(jié)深入分析
這篇文章主要為大家介紹了java底層JDK?Logging日志模塊處理細(xì)節(jié)深入分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03
java實(shí)現(xiàn)圖片轉(zhuǎn)ascii字符畫的方法示例
這篇文章主要介紹了java實(shí)現(xiàn)圖片轉(zhuǎn)ascii字符畫的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08
Java常見數(shù)據(jù)結(jié)構(gòu)面試題(帶答案)
這篇文章主要介紹了Java常見數(shù)據(jù)結(jié)構(gòu)面試題,帶有答案及解釋,希望對廣大的程序愛好者有所幫助,同時(shí)祝大家有一個(gè)好成績,需要的朋友可以參考下。2017-09-09
springboot項(xiàng)目如何引用公共模塊的bean
這篇文章主要介紹了springboot項(xiàng)目如何引用公共模塊的bean問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08

