// 数据初始化
int[] cardIds = {6666, 8888, 0, 0, 0};
String[] names = {"qq", "qz", null, null, null};
String[] passwords = {"sl6666", "sd8888", null, null, null};
Scanner input = new Scanner(System.in);
do {
System.out.println("*************************");
System.out.println("*\t欢迎来到幸运大轮盘\t*");
System.out.println("*************************");
System.out.println("1.注册");
System.out.println("2.登录");
System.out.println("3.退出");
System.out.println("*************************");
System.out.print("请选择菜单:");
String choice = input.next();
switch (choice) {
case "1":
// 1.验证是否可以注册
int insert = -1;
for (int i = 0; i < names.length; i++) {
if (names[i] == null) {
insert = i;
break;
}
}
if (insert == -1) {
System.out.println("对不起!系统已关闭注册!");
break;
}
// 2.输入账号信息
System.out.println("首页 > 注册");
System.out.println("请填写个人注册信息:");
String registerName;
do {
System.out.print("用户名:");
registerName = input.next();
// 2.1验证用户名是否已存在
boolean isExists = false;
for (String name : names) {
if (name != null && registerName.equals(name)) {
isExists = true;
break;
}
}
if (isExists) {
System.out.println("对不起!该用户太抢手!");
continue;
}
break;
} while (true);
// 2.2验证密码长度是否合格
String registerPassword;
do {
System.out.print("密码:");
registerPassword = input.next();
if (registerPassword.length() < 6 || registerPassword.length() > 10) {
System.out.println("对不起!密码的长度应该在6到10之间。");
continue;
}
break;
} while(true);
// 3.生成不重复的会员卡号
int registerCardId;
do {
registerCardId = (int) (Math.random() * (10000 - 1000)) + 1000;
// 遍历查找会员号
boolean isExists = false;
for (int cardId : cardIds) {
if (registerCardId == cardId) {
isExists = true;
break;
}
}
if (isExists) {
continue;
}
break;
} while (true);
// 4.存储会员信息
cardIds[insert] = registerCardId;
names[insert] = registerName;
passwords[insert] = registerPassword;
// 5.提示注册结果, 并展示会员信息
System.out.println("注册成功!请牢记您的会员信息!");
System.out.println("卡号\t\t姓名\t\t密码");
System.out.printf("%d\t\t%s\t\t%s\n", registerCardId, registerName, registerPassword);
break;
case "2":
System.out.println("首页 > 登录");
// 1.输入账号信息
System.out.print("用户名:");
String loginName = input.next();
System.out.print("密码:");
String loginPassword = input.next();
// 2.验证用户名和密码是否正确
boolean loginSuccess = false;
int loginCardId = 0;
for (int i = 0; i < names.length; i++) {
if (names[i] != null) {
if (loginName.equals(names[i])
&& loginPassword.equals(passwords[i])) {
loginSuccess = true;
loginCardId = cardIds[i];
}
}
}
if (!loginSuccess) {
System.out.println("登录失败!用户名或密码错误!");
break;
}
// 3.提示结果
System.out.println("登陆成功!欢迎你:" + loginName);
// 4.生成幸运卡号
// 方案1:生成5个不重复的4位数
// 方案2:从账号数组随机5个会员号
int count = 0;
for (int i = 0; i < names.length; i++) {
if (names[i] != null) {
count ++;
}
}
int luckyIndex = (int) (Math.random() * 2);
System.out.println("本日的幸运卡号为:" + cardIds[luckyIndex]);
// 5.验证:当前用户是否是幸运会员
// 6.提示结果
if (loginCardId == cardIds[luckyIndex]) {
System.out.println("恭喜你!");
} else {
System.out.println("对不起!");
}
break;
case "3":
System.out.println("欢迎下次光临!程序结束!");
return;
default:
System.out.println("输入有误!请重新输入!");
break;
}
} while (true);
}
简易版吃货联盟订餐系统
最新推荐文章于 2024-07-22 14:15:06 发布