11.04 循环进阶作业提交

https://juejin.im/post/6891183425869807629/

作业 11.04 循环

一,会员信息展示

  • 输入三次会员信息

  • 从键盘录入会员编号

    • 会员号为四位数的数字,输错中止后续的录入
  • 从键盘录入生日

  • 接收会员积分

  • 输出会员的信息,格式为

    • 会员号 生日 积分
import java.util.Scanner;

public class lulu {
    public static void main(String[] args) {
        Scanner ipt =new Scanner(System.in);
        //定义数组memArr birArr poinArr分别用来存储会员号 会员生日 会员积分
        int [] memArr = new int[3];
        String [] birArr = new String[3];
        int [] poinArr = new int[3];
        
        boolean bool = false;
        System.out.println("MyShopping管理系统> 客户信息管理> 添加客户信息\n");

        //循环三次输入,存储会员号 会员生日 会员积分
        int i;
        for (i = 0;i< memArr.length;i++){
            System.out.print("请输入会员号(<4位整数>):");

            //判断用户输入的会员号是否为整数 否则终止后续的录入
            if (ipt.hasNextInt()){
                memArr[i] = ipt.nextInt();

                //判断用户输入的会员号是否为四位整数 如果是继续后续的录入 否则终止后续的录入   通过对bool的循环赋值判断输出程序结束
                if (999<memArr[i]&&memArr[i]<10000){
                    System.out.print("请输入会员生日(月/日<用两位整数表示>):");
                    birArr[i] = ipt.next();
                    System.out.print("请输入会员积分:");
                    poinArr[i] = ipt.nextInt();
                    System.out.println("您录入的会员信息是:");
                    System.out.println(memArr[i]+" "+ birArr[i]+" "+ poinArr[i]);
                    System.out.println();
                    bool = true;
                }else{
                    System.out.println("输入错误!请输入格式为4位整数的会员号");
                    bool = false;
                    break;
                }
            }else{
                System.out.println("输入错误!请输入格式为4位整数的会员号");
                bool = false;
                break;
            }
        }

        //判断 输出语句!
        if (bool){
            System.out.println("程序结束!");
        }
    }
}

效果

在这里插入图片描述

二,登录次数验证

  • 提前定义好标准的用户名与密码
    • 用户名,root
    • 密码,123123
  • 登陆功能
    • 键盘接收用户名
    • 键盘接收密码
    • 验证是否登陆成功
      • 成功,打印登陆成功
      • 失败,剩余次数-1,并且打印剩余次数
import java.util.Scanner;

public class lulu {
    public static void main(String[] args) {
        Scanner ipt =new Scanner(System.in);
        //定义标准的用户名userName密码password
        String userName = "root";
        String password = "123123";
        //定义用户输入的用户名entName密码entPassword
        String entName;
        String entPassword;
        
        boolean bool = true;

        //循环三次重新输入的机会
        int i;
        for (i = 3; i>0;){
            i--;
            System.out.print("请输入用户名:");
            entName = ipt.next();
            System.out.print("请输入密码:");
            entPassword = ipt.next();
            
            //判断若用户名或密码其中有一个不对,继续重新输入 跳过成功登录语句
            if (!entName.equals(userName)||!entPassword.equals(password)){
                System.out.println("输入错误!您还有"+i+"次机会!");
                System.out.println();
                continue;
            }
            
            //若成功登录 结束循环
            System.out.println("欢迎登陆MyShopping系统!");
            bool = false;
            break;
        }
        
        //判断 输出语句
        if (bool){
            System.out.println("对不起,您3次均输入错误!");
        }
    }
}

效果

在这里插入图片描述
三,猜数字游戏

  • 电脑随机生成一个数,范围是0-9
  • 玩家可以反复复的猜游戏
    • 接收玩家的一个数值
    • 如果大了,提示一下,大了
    • 如果小了,提示一下,小了
    • 如果小了,提示一下,小了

版本1

  • 玩家反复猜游戏,猜到为止
import java.util.Scanner;

public class lulu {
    public static void main(String[] args) {
        Scanner ipt =new Scanner(System.in);
        //定义随机数random 用户输入的数guess 是否继续循环bool
        int random;
        int guess;
        boolean bool = true;

        System.out.println("猜数字游戏");
        while (bool){

            //给随机数random赋值一个随机数
            random = (int)(Math.random()*10);
            System.out.print(""+random+"请输入数字:");
            guess = ipt.nextInt();

            //如果中了输出中了 bool赋值为false终止下次循环 若没中输出提示语句继续循环
            if (guess==random){
                System.out.println("中了!");
                bool = false;
                break;
            }else if (guess>random){
                System.out.println("大了");
            }else{
                System.out.println("小了");
            }
        }
        System.out.println("\n程序结束!");
    }
}

效果

在这里插入图片描述
版本2

  • 玩家最多猜三次,三次以内猜中,算赢,超过三次,就算输
import java.util.Scanner;

public class lulu {
    public static void main(String[] args) {
        Scanner ipt =new Scanner(System.in);
        //定义随机数random 用户输入的数guess
        int random;
        int guess;
        boolean bool = true;

        int i;
        System.out.println("猜数字游戏");
        for (i = 3; i>0;){
            i--;

            //给随机数random赋值一个随机数
            random = (int)(Math.random()*10);
            System.out.print(random+"请输入数字:");
            guess = ipt.nextInt();

            //如果中了输出中了 bool赋值为false终止循环 若没中输出提示语句继续循环
            if (guess==random){
                System.out.println("中了!");
                bool = false;
                break;
            }else if (guess>random){
                System.out.println("大了");
            }else{
                System.out.println("小了");
            }
        }
        if (bool){
            System.out.println("\n超过三次机会,输了!");
        }
    }
}

效果

在这里插入图片描述
版本3

  • 启动游戏后,有一个初始金币,值为50
  • 每猜一次,扣10
  • 如果余额不足,不能再玩了
  • 如果猜中了,奖励20
  • 猜中了,提示第几次猜中,余额是多少
import java.util.Scanner;

public class lulu {
    public static void main(String[] args) {
        Scanner ipt =new Scanner(System.in);
        //定义随机数random 用户输入的数guess 初始金币coins
        int random;
        int guess;
        int coins = 50;
        int count = 0;

        System.out.println("猜数字游戏");
        while (coins>=10){

            coins-=10;
            count++;
            //给随机数random赋值一个随机数
            random = (int)(Math.random()*10);
            System.out.print(""+random+"花费10金币猜一次,请输入数字:");
            guess = ipt.nextInt();

            //如果中了输出中了 初始金币+20  没中输出提示语句
            if (guess==random){
                coins+=20;
                System.out.println("第"+count+"次猜中了,奖励20!余额为:"+coins);
            }else if (guess>random){
                System.out.println("大了");
            }else{
                System.out.println("小了");
            }
        }
        System.out.println("\n余额不足,不能再玩了!");
    }
}

效果

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值