幸运抽奖系统

主要任务:

模拟抽奖,实现用户的注册、登录以及幸运抽奖三大功能

主要功能:

注册:

输入账号和密码进行用户注册,并且随机生成卡号,只有注册成功才能进行用户登录

登录:

输入账号和密码进行登录验证,登录成功才能进行幸运抽奖

幸运抽奖:

登录成功后,输入卡号进行抽奖,判断用户是否为幸运用户

代码:

import java.util.Arrays;
import java.util.Scanner;

/**
 * @Author: Bun
 * @Version: 1.0
 * @Date: 2022/9/27-19:52
 * @Since: jdk1.8
 * @Name: 幸运抽奖
 */
public class LuckyRemake {
    Scanner scanner = new Scanner(System.in);
    int account = 0, passWord = 0, cardNum = 0, G = 0;

    /*
    主界面start
     */
    public void start() {
        int menu;
        System.out.println("-----------------------------");
        System.out.println("1.注册账号");
        System.out.println("2.登录账号");
        System.out.println("3.抽奖系统");
        System.out.println("4.退出");
        System.out.println("-----------------------------");
        System.out.println("请选择:");
        menu = scanner.nextInt();

        switch (menu) {
            case 1:
                register();
                break;
            case 2:
                login();
                break;
            case 3:
                luck();
                break;
            case 4:
                quit();
                break;
            default:
                System.out.println("您的输入有误!");
                start();
        }
    }

    /*
    注册系统register
     */
    public void register() {
        System.out.println("[欢迎使用注册系统,请填写您的注册信息: ]");
        System.out.println("请输入您的账号: ");
        account = scanner.nextInt();
        System.out.println("请输入您的密码: ");
        passWord = scanner.nextInt();
        //卡号
        int max = 9999;
        int min = 1000;
        cardNum = (int) (Math.random() * (max - min) + min);
        //Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值
        System.out.println("注册完成!");
        System.out.println("您的账号密码是: ");
        System.out.println("账号 :" + account + " 密码: " + passWord);
        System.out.println("您的卡号是: " + cardNum);
        G = 1;
        System.out.println("是否继续?(y/n)");
        String jiXv = scanner.next();
        if (jiXv.equals("y")) {
            start();
        } else {
            quit();
        }
    }

    /*
    登录系统login
     */
    public void login() {
        int account1, passWrod1, jName, jPassWord;
        String jiXv;
        int frequency = 0;
        if (G != 1) {
            System.out.println("请先注册!");
            start();
        } else {
            for (int i = 1; i < 4; i++) {
                System.out.println("[欢迎使用登录系统,请填写您的账号密码: ]");
                System.out.println("请输入您的账号: ");
                account1 = scanner.nextInt();
                System.out.println("请输入您的密码: ");
                passWrod1 = scanner.nextInt();
                //将输入的账号密码赋值给jName和jPassWord,用于之后的判断
                jName = account1;
                jPassWord = passWrod1;
                if (jName == account && jPassWord == passWord) {
                    System.out.println("登陆成功!");
                    System.out.println("欢迎您: " + cardNum);
                    G = 2;
                    System.out.println("是否继续?(y/n)");
                    jiXv = scanner.next();
                    if (jiXv.equals("y")) {
                        start();
                        break;
                    } else {
                        quit();
                    }
                } else {
                    frequency++;
                    System.out.println("登陆失败");
                    System.out.println("账号或密码错误,请重新输入:");
                    System.out.println("剩余机会:" + (3 - frequency));
                    if (frequency == 3) {
                        System.out.println("机会已用完");
                        quit();
                    }
                }
            }
        }
    }

    /*
    幸运抽奖luck
     */
    public void luck() {
        String jiXv;
        if (G != 2) {
            System.out.println("请先登录!");
            start();
        } else {
            System.out.println("[欢迎使用抽奖系统]");
            int[] luckyNumber = getNumbers();
            System.out.println("本轮幸运卡号有: " + Arrays.toString(luckyNumber));
            for (int i : luckyNumber) {
                for (int L : luckyNumber) {
                    if (cardNum == L) {
                        System.out.println("[恭喜你,中奖了!]");
                        System.out.println("正在返回主界面");
                        start();
                    }
                }
                System.out.println("[很遗憾,你不是今日的幸运会员!]");
                System.out.println("正在返回主界面");
                start();
            }
        }
    }

    /*
    摇奖
     */
    public static int[] getNumbers() {
        int[] luckyNumber = new int[5];
        for (int i = 0; i < luckyNumber.length; i++) {
            luckyNumber[i] = (int) (Math.random() * 9000 + 1000);
        }
        return luckyNumber;
    }

    /*
    退出quit
     */
    public static void quit() {
        System.out.println("正在退出");
        return;
    }

    public static void main(String[] args) {
        LuckyRemake st = new LuckyRemake();
        st.start();
    }
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值