Java运算符练习题,最后一题你会吗?


题目1(训练)

身高是具有遗传性的,子女的身高和父母的身高有一定的关系。假定,父母和子女的身高遗传关系如下:

​ 儿子身高(厘米)=(父亲身高+母亲身高) ×1.08÷2

​ 女儿身高(厘米)=(父亲身高×0.923+母亲身高) ÷2

现有父亲身高177CM,母亲身高165CM。求子女身高分别预计为多少?

训练提示

  1. 已知的父母身高如何用代码体现?

  2. 题目中的公式如何转化为代码?

解题方案

使用变量的定义和算术运算符完成本题

操作步骤

  1. 定义小数变量代表父亲身高

  2. 定义小数变量代表母亲身高

  3. 通过儿子身高计算方式计算儿子身

  4. 通过女儿身高计算方式计算女人身高

参考答案

public class Demo01 {
    public static void main(String[] args) {
        //1.定义父亲身高
        double father = 177;
        //2.定义母亲身高
        double mother = 165;
        //3.利用公式计算儿子身高
        double son = (father + mother) * 1.08 / 2;
        //4.利用公式计算女儿身高
        double daughter = (father * 0.923 + mother) / 2;
        //5.打印结果
        System.out.println("儿子预计身高" + son + "厘米");
        System.out.println("女儿预计身高" + daughter + "厘米");

    }
}

题目2(训练)

红茶妹妹有21元钱,她攒了几天钱之后自己的钱比原来的两倍还多三块。绿茶妹妹有24元钱,她攒了几天钱之后自己的钱正好是原来的两倍。那么红茶和绿茶现在的钱一样多,请问对么?

训练提示

  1. 用什么知识点来计算她们现在的钱有多少?

  2. 如何对比两个人的钱数?

解题方案

使用赋值运算符和算术运算符计算各自的钱,使用比较运算符对比大小

操作步骤

  1. 定义红茶妹妹原来的钱为整数变量

  2. 定义绿茶妹妹原来的钱为整数变量

  3. 使用赋值运算符和算术运算符计算其现有的钱

  4. 使用比较运算符对数值做出比较

参考答案

public class Demo2 {
    public static void main(String[] args) {
        //1.定义红茶妹妹原来的钱
        int red = 21;
        //2.定义绿茶妹妹原来的钱
        int green = 24;
        //3.求红茶妹妹现有的钱
        red = red * 2 + 3;
        //4.求绿茶妹妹现有的钱
        green *= 2;
        //5.判断并输出两个人的钱是否相等
        System.out.println(red == green);
    }
}

题目3(综合)

某小伙想定一份外卖,商家的优惠方式如下:鱼香肉丝单点24元,油炸花生米单点8元,米饭单点3元。订单满30元8折优惠。鱼香肉丝优惠价16元,但是优惠价和折扣不能同时使用。那么这个小伙要点这三样东西,最少要花多少钱?

训练提示

有两种购买方式,一种是不使用优惠价,另一种是使用优惠价。分别计算花费后,对两种方式的花费作对比。

解题方案

使用算术运算符、赋值运算符和三元运算符联合完成本题

操作步骤

  1. 使用算术运算符求出不使用优惠时的总价

  2. 使用三元运算符判断总价是否满足打折条件,并求出折后总价

  3. 使用算术运算符求出使用优惠价时的总价

  4. 使用三元运算符判断最终更合算的购买方式和花费

参考答案

public class Demo3 {
    public static void main(String[] args) {
        //1.求不使用优惠时的总价
        double money1 = 24 + 8 + 3;
        //2.判断折后总价
        money1 = (money1 >= 30 ? money1 : money1 * 0.8);
        //3.求使用优惠时的总价
        double money2 = 16 + 8 + 3;
        //4.判断两种花费哪个更少
        double money = money1 < money2 ? money1 : money2;
        //5.打印最终花费
        System.out.println(money);
    }
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值