4.4.3 折扣问题
2025年09月26日
4.4.3 折扣问题
【例4-16】某商店进行购物打折优惠活动促销,根据每位顾客一次性购物的消费额给予不同的折扣,具体方法如下。
(1)购物1000元以上的九五折优惠;
(2)购物2000元以上的九折优惠;
(3)购物3000元以上的八五折优惠;
(4)购物5000元以上的八折优惠。
按“三步法”原则分析如下。
做什么
1)用户输入消费额数据,需要一个文本框。
2)计算应付额,需要一个“计算”按钮。
3)一个用于说明文本框的标签。
怎么做
步骤描述如下。
1)读取用户输入的数据到变量x中。
2)如果x<1000,则没有优惠,把输出信息“没有优惠!应付款……”存入变量s,然后执行第7)步;否则执行第3)步。
3)如果x<2000,则给予九五折优惠,把输出信息“九五折优惠!应付款……”存入变量s,然后执行第7)步;否则执行第4)步。
4)如果x<3000,则给予九折优惠,把输出信息“九折优惠!应付款……”存入变量s,然后执行第7)步;否则执行第5)步。
5)如果x<5000,则给予八五折优惠,把输出信息“八五折优惠!应付款……”存入变量s,然后执行第7)步;否则执行第6)步。
6)如果x>5000,则给予八折优惠,把输出信息“八折优惠!应付款……”存入变量s,然后执行第7)步。
7)输出s。
实现
在上述步骤描述的第2)~6)步中,每步都是一种可能,覆盖了用户输入数据的所有可能。无论哪种可能,最终都要执行第7)步,所以第7)步在多分支语句之外。第2)~6)步中可以把第6)步看作第2)~5)步都不满足的情况,也就是Case Else情况。
完整代码如下。