hello 小伙伴们 这么长时间没有更新想我了吗
同学:这还用说
我:
所以这次我也是给大家带来了一道编程题(建议大家先自己做,再看代码)
这一道题结合了商场的实际情况优惠打折 有无会员卡 和给顾客找零,废话不多说,直接开lo
小派去超市购物,购买了苹果和书包。恰逢超市搞活动,如果总花费超过500元(含500元)则给打八折。请输入购买苹果和书包的单价和数量,并计算出购买商品的总价,有会员卡打九折(会员卡与打折可叠加),并实现找零功能,。
难度:★★★☆
import java.util.Scanner;
public class john {
public static void main(String[] args) {
Scanner myscanner = new Scanner(System.in);
System.out.println("请输入苹果单价");
double appleprice = myscanner.nextDouble();
System.out.println("请输入苹果数量");
int applenumber = myscanner.nextInt();
System.out.println("请输入书包单价");
double bagprice = myscanner.nextDouble();
System.out.println("请输入书包的数量");
int bagnumber = myscanner.nextInt();
double total = appleprice * applenumber + bagprice * bagnumber;
System.out.println("有无会员卡(输入1/0)");
int Vipcard = myscanner.nextInt();
if (total > 0) {//共有四种情况
if (Vipcard == 1 && total >= 500) {//第一种 有会员卡并且消费超过500
total = (total = total * 0.8) * 0.9;
System.out.println("您一共需要花费" + total + "元");
} else if (Vipcard == 1 && total < 500) {//第二种 有会员卡但是消费没有超过500
total = total * 0.9;
System.out.println("您一共需要花费" + total + "元");
} else if (Vipcard == 0 && total >= 500) {//第三种 没有会员卡但是消费超过500
total = total * 0.8;
System.out.println("您一共需要花费" + total + "元");
} else {//第四种 没有会员卡并且消费也没有超过500
System.out.println("您一共需要花费" + total + "元");
}
}
System.out.println("输入人民币");
double loosechange = myscanner.nextDouble();//零钱
loosechange = loosechange - total;
if (loosechange > 0) {
System.out.println("找回零钱" + loosechange);
}
while (loosechange < 0) {
System.out.println("余额不够还需" + String.format("%.2f",Math.abs(loosechange))+"元");
System.out.println("请再次输入人民币");
double rmb = myscanner.nextDouble();
loosechange = rmb - Math.abs(loosechange);
if(loosechange>0){
System.out.println("找回零钱" + String.format("%.2f",loosechange)+"元");
}
}
System.out.println("本次消费结束");
}
}
这道题总体来说不太难,可能大家难的点就是不知道该做哪一步,或者看到代码这么多有点慌,感觉很难,编程其实就是日积月累的过程,扎实的把基础打好,学后面的东西就会一遍过或者两遍过。切记不要好高骛远,感觉这道题我看会了我就不去写,实际上动手写你写不出来什么,一定要多做多练。
好啦,有不懂同学可以评论区告诉我,这一期的分享就到这里啦,伙伙们再见