评论

收藏

[Java] 纯java代码实现抽奖系统

编程语言 编程语言 发布于:2021-10-05 18:56 | 阅读数:300 | 评论:0

这篇文章主要为大家详细介绍了纯java代码实现抽奖系统,无连接数据库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了java实现抽奖系统 的具体代码,供大家参考,具体内容如下
模拟一个在终端登陆注册的页面
public class cjtest {
 public static void main(string[] args) {
  string isgoon = "n"; //循环的判断条件是否继续
 do {
  system.out.println("*********幸运52********");
  system.out.println("1.注册");
  system.out.println("2.登录");
  system.out.println("3.幸运大抽奖");
  system.out.println("***********************");
  system.out.println("请选择菜单");
  //接收用户选择的菜单
  scanner scanner = new scanner(system.in);
  string meunnum = scanner.nextline();
  //根据用户的选择 来执行对应功能 
  meunchoose(meunnum);
  system.out.println("是否继续---输入y/n");
  //接收判断循环条件
  isgoon = scanner.nextline();
 } while (isgoon.equals("y"));
 //循环结束提示
 system.out.println("欢迎下次使用");
 }
 //选择对应的方法
 public static void meunchoose(string meunnum) {
 switch (meunnum) {
 case "1":
  system.out.println("抽奖系统----注册");
  //调用 注册的方法
  register.register();
 case "2":
  system.out.println("抽奖系统----登录");
  //调用登录的方法
  user.islogin=login.login();
  break;
 case "3":
  system.out.println("抽奖系统----幸运抽奖");
  luckdraw.lukcdraw();
  break;
 default:
  system.out.println("输入错误请重新输入");
  break;
 }
 
 } 
}
不连接数据库所以模拟一个注册时用户信息所存放的位置
public class user {
 //用户名
 public static string username = "";
 //密码
 public static string password = "";
 //幸运数字
 public static int lucknumber = 0;
 //用户的登录状态
 public static boolean islogin = false;
 
}
注册功能实现
public class register {
 public static void register() {
 system.out.println("请注册用户的个人信息");
 scanner scanner = new scanner(system.in);
 system.out.println("用户名");
 //接收用户名 放在用户信息中
 user.username = scanner.nextline();
 system.out.println("密码");
 //接收到用户信息中
 user.password = scanner.nextline();
 //随机一个四位的1000-2000的数 保存到用户中。
 user.lucknumber = (int)(math.random()*(2000-1000+1)+1000);
 //显示用户的注册信息
 system.out.println("用户名"+user.username);
 system.out.println("密码"+user.password);
 system.out.println("幸运数字"+user.lucknumber);
//scanner.close();标记:注意scanner 只能关闭一次 关闭后在本程序执行中 在创建也不能接收键盘信息了
 } 
 
}
登陆
public class login {
 static int number = 0;//控制循环输入密码三次
 public static boolean login() {
 system.out.println("请输入用户名:");
 //接收用户名
 scanner scanner = new scanner(system.in);
 string username = scanner.nextline();
 system.out.println("请输出账号:");
 string password = scanner.nextline();
 //判断用户名密码是否匹配
 if(username.equals(user.username)&&password.equals(user.password)) {
  //登陆成功
  system.out.println("登陆成功");
  //返回一个登录状态
  return true;
 }else {
  //登录失败 有重新登录三次机会。
  number++;
  system.out.println("你还有"+(3-number)+"次机会");
  if (number !=3) {
  //还有登陆的机会
  login();
 }else {
  //三次机会已用 登录失败
  system.out.println("三次机会已用完 登录失败");
 }
  //写返回值的时候要保证每一个分支都要有返回值
  return false;
 }
 }
}
抽奖系统逻辑
public class luckdraw {
 //记录输入卡号注册
 static int number = 0;
 public static void lukcdraw() {
 //是否注册 没注册不能抽
 if(user.username.length() ==0 ) {
  //没注册 下面都不执行
  system.out.println("你没注册");
  return;
 }
 //是否登录 没登录不让抽
 if(!user.islogin) {
  system.out.println("你没登录");
  return;
 }
 //如果卡号没输对 也不让抽奖 直接return
 if (!islucknumber()) {
  system.out.println("卡号不对!不能登录");
  return;
 }
 //真的 可以抽奖了
 //定义一个 变量保存中奖的结果
 boolean islucky = false;
 //随机五个数 打印出结果 并判断是否匹配幸运号码
 //定义一个变量 来保存累加的字符串
 string s = "本次幸运的数";
 for (int i = 0; i < 5; i++) {
  int num = (int) (math.random() * (2000-1000+1) + 1000);
  //拼接要打印的字符串
  if(i<5) {
  s = s + num+","; 
  }else {
  s = s+num; 
  }
  //判断是否中奖
  if(user.lucknumber==num);
  //中奖
  islucky = true;
 }
 //打印幸运数字
 system.out.println(s);
 if (islucky) {
  system.out.println("你中奖了");
 }else {
  system.out.println("你没中奖");
 }
 }
 public static boolean islucknumber() { //判断卡号是个输入正确
 //抽奖
  system.out.println("请输入卡号");
  scanner scanner = new scanner(system.in);
  int lucknumber = scanner.nextint();
  //判断用户输入的卡号是不是 这个用户之前随机出来的那个数
  if (lucknumber==user.lucknumber) {
   system.out.println("输入正确抽奖马上运行");
   return true;
   //卡号相同可以抽奖
  }else {
   //卡号不相同 重新输入三次机会
   number++;
   if (number!=3) {
   islucknumber();
   }else {
   system.out.println("三次机会已用尽");
   }
   return false;
 }
 }
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持CodeAE代码之家
原文链接:https://blog.csdn.net/qq_36390044/article/details/79751929

关注下面的标签,发现更多相似文章