幸运抽奖项目

import java.util.Scanner;


public class demoshangjilianxi第十章 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    /**
     * 设变量
     */
        Scanner input =new Scanner(System.in);
        String jixu ="y";//是否继续
        String young =" ";//用户名
        String pwd=" ";//密码
        String hu =" ";//用户名定义变量
        String mi =" ";//密码定义变量
        int max =9999;//密码最小值
        int min =1000;//密码最大值
        int cardnumber =(int)(Math.random()*(max-min))+min;
        int cardnumber1 =(int)(Math.random()*(max-min))+min;
        int cardnumber2 =(int)(Math.random()*(max-min))+min;
        int cardnumber3 =(int)(Math.random()*(max-min))+min;
        int cardnumber4=(int)(Math.random()*(max-min))+min;
        int cardnumber5 =(int)(Math.random()*(max-min))+min;
        do{
            
        
        System.out.println("\n\t\t*****欢迎进入奖客富翁活动*****" );
        System.out.println("\t\t\t1:注册");
        System.out.println("\t\t\t2:登录");
        System.out.println("\t\t\t3:抽奖");
        System.out.println("**************************************");
        System.out.println("请选择菜单");
        int num =input.nextInt();
        switch(num){
        case 1:
            System.out.println("奖客富翁系统>注册");
            System.out.println("请填入个人信息");
            System.out.println("用户名");
            young =input.next();
            System.out.println("密码");
            pwd=input.next();
            System.out.println("");
            System.out.println("注册成功.请收好你的会员卡");
            System.out.println("用户名"+"\t"+"密码"+"\t"+"会员卡号");
            System.out.println(young +"\t"+pwd+"\t"+cardnumber);
            System.out.println("继续吗(y/n)");
            jixu =input.next();
            break;
        case 2:
            System.out.println("奖客富翁系统>登录");
            System.out.println("请填入个人信息");
            for(int i =1;i<=3;i++){
                System.out.println("用户名");
                hu =input.next();
                System.out.println("密码");
                mi =input.next();
                if(hu.equals(young)&&mi.equals(pwd)){
                    System.out.println("欢迎"+young);
                    break;
                }
                System.out.println("还有"+(3-i)+"次机会");
                if(3-i!=0){
                    continue;
                    
                }
                    
             }
            System.out.println("继续吗()y/n");
            jixu=input.next();
            break;
        case 3:
            System.out.println("奖客富翁系统>抽奖");
            System.out.println("请输入你的会员卡号");
            int kahao =input.nextInt();
            if(kahao==cardnumber){
                System.out.println("本日幸运数字");
                System.out.println(cardnumber+" "+cardnumber1+" "+cardnumber2+" "+
                cardnumber3+" "+cardnumber5);
                if(kahao==cardnumber4||kahao==cardnumber3||kahao==cardnumber5){
                    System.out.println("今日幸运客户");
                }else{
                    System.out.println("你不是幸运客户");
                }
            }else{
                System.out.println("卡号错误");
            }
            System.out.println("继续吗(y/n)");
            jixu =input.next();
            break;
            default:
                System.out.println("错误");
                
                }
        }while(jixu.equals("y"));
        System.out.println("系统退出,谢谢使用");
        }
        
            
                
            
        
    }

 

转载于:https://www.cnblogs.com/3020815dzq/p/7416781.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,Java幸运抽奖项目可以按照以下步骤实现: 1. 定义奖品类,包括奖品名称、奖品数量、中奖概率等属性。 2. 定义用户类,包括用户ID、用户名、中奖状态等属性。 3. 创建一个用户列表,用于存储所有参与抽奖的用户。 4. 根据奖品数量和中奖概率,随机生成每个奖品的中奖数量。 5. 编写抽奖方法,随机从用户列表中选择一个用户,并根据中奖概率判断该用户是否中奖,如果中奖,则随机选择一个奖品进行发放。 6. 循环执行抽奖方法,直到所有奖品都被发放完毕。 以下是一个简单的Java幸运抽奖项目示例代码: ```java import java.util.ArrayList; import java.util.List; import java.util.Random; public class LuckyDraw { // 奖品列表 private List<Prize> prizes = new ArrayList<>(); // 用户列表 private List<User> users = new ArrayList<>(); // 随机数生成器 private Random random = new Random(); // 添加奖品 public void addPrize(Prize prize) { prizes.add(prize); } // 添加用户 public void addUser(User user) { users.add(user); } // 抽奖方法 public void draw() { // 计算每个奖品的中奖数量 for (Prize prize : prizes) { prize.setWinningCount(random.nextInt(prize.getTotalCount() / 2) + 1); } // 循环抽奖,直到所有奖品都被发放完毕 while (!prizes.isEmpty()) { // 随机选择一个用户 int index = random.nextInt(users.size()); User user = users.get(index); // 判断该用户是否已经中过奖 if (user.isWinning()) { continue; } // 随机选择一个奖品 index = random.nextInt(prizes.size()); Prize prize = prizes.get(index); // 判断该奖品是否还有剩余 if (prize.getWinningCount() <= 0) { prizes.remove(index); continue; } // 根据中奖概率判断该用户是否中奖 if (random.nextDouble() <= prize.getWinningProbability()) { user.setWinning(true); prize.setWinningCount(prize.getWinningCount() - 1); System.out.println(user.getName() + "中了" + prize.getName() + "!"); } } } public static void main(String[] args) { // 创建幸运抽奖对象 LuckyDraw luckyDraw = new LuckyDraw(); // 添加奖品 luckyDraw.addPrize(new Prize("一等奖", 10, 0.01)); luckyDraw.addPrize(new Prize("二等奖", 20, 0.05)); luckyDraw.addPrize(new Prize("三等奖", 50, 0.1)); // 添加用户 for (int i = 1; i <= 1000; i++) { luckyDraw.addUser(new User(i, "用户" + i)); } // 抽奖 luckyDraw.draw(); } } // 奖品类 class Prize { private String name; // 奖品名称 private int totalCount; // 奖品总数量 private int winningCount; // 中奖数量 private double winningProbability; // 中奖概率 public Prize(String name, int totalCount, double winningProbability) { this.name = name; this.totalCount = totalCount; this.winningProbability = winningProbability; } public String getName() { return name; } public int getTotalCount() { return totalCount; } public int getWinningCount() { return winningCount; } public void setWinningCount(int winningCount) { this.winningCount = winningCount; } public double getWinningProbability() { return winningProbability; } } // 用户类 class User { private int id; // 用户ID private String name; // 用户名 private boolean winning; // 是否中奖 public User(int id, String name) { this.id = id; this.name = name; } public int getId() { return id; } public String getName() { return name; } public boolean isWinning() { return winning; } public void setWinning(boolean winning) { this.winning = winning; } } ``` 以上代码仅供参考,具体实现可以根据实际需求进行修改和优化。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值