基于JAVA的抽奖系统

原创 2017年06月06日 22:32:39

任务描述

本次任务要求为某商场开发一套幸运抽奖系统,客户必须首先注册成为该商场会员,会员登录成功后,就可以参加抽奖活动了。

注册

用户选择“注册”菜单,进入注册界面。输入用户名和密码后,系统提示注册成功,并给出会员卡号。

登录

注册成功后,用户选择“登录”菜单,进入登录界面。输入注册时的用户名和密码。登录成功,系统提示欢迎信息。如果用户和密码输入错误,提示用户继续输入,最多有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("系统退出,谢谢使用!");
        }
    }
}

次程序只是一个基本的小的架构,还有许多可以完善的地方。希望对您有一定的帮助

版权声明:本文为博主原创文章,未经博主允许不得转载。

简单抽奖软件java程序设计

一.设计任务    摇奖 描述:从候选手机号码里随机选取号码显示在屏幕上作为获奖手机号。此题训练多线程操作。 描述 提示和要求: 提示和要求 ①候选号码可以保存在数组中,也可以保存在数据库中。 ②抽奖...
  • liu136313
  • liu136313
  • 2014年01月11日 18:42
  • 3333

java小程序之——幸运抽奖

用户登录 用户注册 用户抽奖代码如下:import java.util.Scanner; public class Luck{ public static void main(String[] a...
  • JOHNEW
  • JOHNEW
  • 2017年04月06日 13:40
  • 2132

使用Java理解程序逻辑第十章----幸运抽奖

import java.util.Scanner; public class LuckyNumber5 { /** * 幸运抽奖 */ public static void main(...
  • qq_36074113
  • qq_36074113
  • 2016年09月07日 17:03
  • 2042

java抽奖系统

java抽奖系统
  • javaniuniu
  • javaniuniu
  • 2016年11月18日 16:58
  • 1714

【小型系统】抽奖系统-使用Java Swing完成

一、需求分析   1. 显示候选人照片和姓名。   2. 可以使用多种模式进行抽奖,包括一人单独抽奖、两人同时抽奖、三人同时抽奖。   3. 一个人可以在不同的批次的抽奖中获取一、二...
  • meimeizhuzhuhua
  • meimeizhuzhuhua
  • 2017年04月21日 21:47
  • 277

Java实现游戏抽奖算法

常用抽奖算法对比基础的游戏抽奖算法通常要求实现在指定奖品的集合中,每个奖品根据对对应概率进行抽取。个人了解的主要有以下几中抽奖算法...
  • yyc252532009
  • yyc252532009
  • 2017年07月24日 08:36
  • 965

Java根据概率、剩余奖品数量动态抽奖算法实现,概率总和可以不为100%

1、建立奖品类,奖品类中只有三种基本属性编号、中奖几率、奖品剩余数量。public class Award { /**编号*/ public String id; /**概率(...
  • u012495579
  • u012495579
  • 2016年09月22日 20:36
  • 10303

幸运大转盘-jQuery+Java实现的抽奖程序

第一次写博客,要喷请轻喷我这弱小的心灵。 昨天项目用到一个在微信上实现的抽奖程序,在网上找了一个jquery+php的例子,因为不会php,花了好大力气才将就搞成了java版的。原文地址:http:/...
  • laughing_yang
  • laughing_yang
  • 2013年10月31日 09:41
  • 20528

学习笔记2015-09-04——一个傻逼抽奖系统

今天花了7个小时做了一个抽奖系统,觉得自己傻逼极了。。。 稍后会把代码丢上来(先总结一下思路,经历以及自己傻逼的原因。 思路 昨天花一天时间,大概有4个多小时,不停地在优化抽奖概率模型,最后还是...
  • zhe13
  • zhe13
  • 2015年09月05日 15:40
  • 740

关于系统架构,项目设计案例(一):抽奖系统概率设计

上面一篇文章说的只是一些想法,我想很多人看到了比较空洞,从这篇文章开始我会把我设计过的一些项目拿出来把我的设计的相关思路给大家作为一些参考。         其实抽奖系统的设计,我在前面的文章有说明...
  • jacky4955
  • jacky4955
  • 2013年02月18日 14:05
  • 5502
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:基于JAVA的抽奖系统
举报原因:
原因补充:

(最多只允许输入30个字)