java day4

回来了,这几天一直备考公务员,十天迅速过行测申论,裸考出来做了套回忆版还差不多100多分笑死,这个比考研真的简单多了;
为了高薪还是先计算机吧,等30了再考虑公务员;开发不行就转测试,测试不行就转行。

java里面的简单的条件选择表达式

if else练习

 da
写了一下最后的优惠券
System.out.println(“请输入商品价格:”);
int price= Scanner.nextInt();
if (price>=300){
price=price-120;
System.out.println(“满减300优惠,您只需要付”+price);
}
else if (price>=200){
price=price-70;
System.out.println(“满减100优惠,您只需要付”+price);
}
else if (price>=100) {
price = price - 30;
System.out.println(“您需要付” + price);
}
else
System.out.println(“您需要付”+price);

很简单继续走

练习
在这里插入图片描述
写一个计算男女健康比例的程序,注意,写在if else里面的都是局部变量,在外界不可用。

在这里插入图片描述
如果这里计算完毕后面还需要用到,建议在外部计算
可以在外部先定义,然后再if else重新计算改值,完毕后使用的时候就是后计算的。

健康饮食计划练习

        //先获取信息
        System.out.println("请输入身高cm:");
        double height = Scanner.nextDouble();
        System.out.println("请输入体重kg:");
        int weight = Scanner.nextInt();
        System.out.println("请输入年龄:");
        int age = Scanner.nextInt();
        System.out.println("请输入性别(0女 1男):");
        int gender = Scanner.nextInt();
        System.out.println("请输入活动级别:久坐-1 轻度-2 中度-3 重度-4 非常活跃-5");
        int activity = Scanner.nextInt();
//bmi计算
        double bmi = weight / (height/100*(height/100));
        String BMI="";//定义一个串方便传值
        if (bmi<18.5) {
            BMI ="过轻";
        }
        else if (bmi>=18.5 && bmi<24) {
            BMI ="正常";
        }
        else if (bmi>=24 && bmi<28) {
            BMI ="过重";
        }
        else if (bmi >= 28){
            BMI ="肥胖";
        }
//目标
        String goal="";//同理
        if (BMI.equals("肥胖") || BMI.equals("过重")){
            goal = "减重";
        }
        else if (BMI.equals("过轻")) {
            goal = "增重";
        }
        else
            goal = "保持";
        //打印
System.out.println("您的BMI为:"+(int)bmi);
System.out.println("属于:"+BMI);
System.out.println("建议您"+goal+",加油!");


//计算bmr也即是每日代谢
        //为了后面也能用我先定义一个然后if else里面更新传值就行
       int bmr =0;
        if (gender==0){
            bmr = (int) (10 * weight + 6.25 * height - 5 * age - 161);
            //女性
        }
        else{
            bmr = (int) (10 * weight + 6.25 * height - 5 * age + 5);;
            //男性
        }

//计算tdee 他的bmr*活动系数,先判断活动系数
        double Activity=0;
        if (activity==1){
            Activity=1.2;//久坐
        }
        else if (activity==2) {
            Activity=1.375;
        }
        else if (activity==3) {
            Activity=1.55;
        }
        else if (activity==4) {
            Activity=1.725;
        }
        else  {//大于5以上的都是1.9
            Activity=1.9;
        }

//算tdee,结合运动后的代谢
        int tdee =(int)(bmr*Activity);

//给方案,增肌的话要增加多少,调整tdee
//算出他每日要摄入多少,应该吃哪些东西
        int calorie=tdee;
        if (goal.equals("增重")){
            calorie+=500;//增肌的代谢要更快,吃多耗费多代谢快
        } else if (goal.equals("减重")) {
            calorie-=500;
        }
//算每日所需热量的具体物品
        int protein = (int) (calorie * 0.3/4);//蛋白质
        int fat = (int) (calorie * 0.4/9);//脂肪
        int c = (int) (calorie * 0.3/4);//碳水
//输出
        System.out.println("--------健康饮食计划---------");
        System.out.println("您的bmi(体脂)为:"+(int)bmi+"  您的目标适合:"+goal);//如果想保留两位,可以导入方法
        System.out.println("您bmr(每日基础代谢):"+bmr+"千卡"+",tdee(结合运动后的代谢)为"+tdee+"千卡");
        System.out.println("给您的方案建议是每日摄入:"+calorie+"千卡"+",具体摄入食品含量如下:");
        System.out.println("蛋白质:"+protein+"克");
        System.out.println("脂肪:"+fat+"克");
        System.out.println("碳水:"+c+"克");
        System.out.println("--------祝您生活愉快---------");

有些比如计算的时候,再多一个变量来接收这个思想就get不到,还是多练,不是写完立马输出的话,就先设一个空的或者先等于0 来计算,方便中转,逻辑更好,这个方案主要就几步

健康饮食计划

**1.**先获取信息,写好所有自输入
**2.**然后计算bmi主要是需要判断,bmi的公式可以搜到,这里设置一个空字符串方便传值,汉字模式。
**3.**接着给出方案,利用空字符串给的信息,来做if else 当然让字符串相等需要调用方法.equal(“被比较的字符”)然后设置目标,bmi过轻就增重,过重就减肥。类推
**4.**接着算他的代谢,代谢分两个一个是基础代谢bmr 一个是运动后的代谢tdee
(1)算bmr 有男女不一样的公式,我们后面还要用bmr所以前面先设置为0再if else立马改值就行可以传值过去。男女不同公式搜就行。
(2) 算tdee是bmr乘以活动系数,所以要先算活动系数,不同输入对应不同系数,设置新变量接收这个判断的结果就行了,然后给一个tdee的公式新变量乘以bmr
这里就实现了男女不同选择的bmr和不同活动系数不同的tdee
**5.**算完全部所需要的东西之后我们来设置方案,比如
如果目标是增重,那我们就调整代谢,算他的每日摄入量,每日摄入量就是tdee,但是比如你增重肯定要多摄入,所以我们设置一个新变量,好区分,叫卡路里,增重那卡路里就等于tdee+x这种,x自己设定,减肥反推。大致方案就设置好了。
但是要具体到每天该吃啥合适,比如我们的摄入卡路里一共要1000,那我们分别吃蛋白质和碳水脂肪各自多少合适就需要公式计算,这个搜一下ai,设置三个变量出来,来接收这个公式算好的值,多吃点蛋白质就自己设置比重多占一点。至此代码差不多完成
**6.**最后就是人性化的格式输出,输出bmi、目标、bmr、tdee、然后给出方案
您的bmi多少,建议什么目标,bmr多少tdee多少,给的方案是每日要摄入多少千卡,具体分到那几样东西上面各占多少克,就人性化输出。

将if else多练,基本上所有问题的解决都离不开循环加条件判断。

三元运算符

在这里插入图片描述

练习

用三元运算符做需求
满300打8折,满200打9折
System.out.println(“请输入商品价格:”);
double price = Scanner.nextDouble();
double discount = price>=300? price0.8 : price0.9;
System.out.println(“打折后的价格是:”+discount);

就是一个三元的运算符
设置一个变量去接收他,条件?然后是则第一个不是就第二个

欧克后面29还有事业编考试,后期考完打算一天20集,早期现在每天10集,加油加油

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值