![Python程序设计教程(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/531/34752531/b_34752531.jpg)
上QQ阅读APP看书,第一时间看更新
3.1.4 选择结构的嵌套
在某一个分支的语句体中,又嵌套新的分支结构,这种情况称为选择结构的嵌套。选择结构的嵌套形式因问题不同而千差万别,因此分析透彻每一个分支的逻辑情况是编写程序的基础。
【例3-5】 输入客户类型、标准价格和订货量。根据客户类型(<5为新客户,≥5为老客户)和订货量给予不同的折扣,计算应付货款(应付货款=订货量×标准价格×(1-折扣率))。
如果是新客户:订货量800以下,没有折扣;否则折扣率为2%。如果是老客户:订货量500以下,折扣率为3%;订货量500及以上,1000以下,折扣率为5%;订货量1000及以上,2000以下,折扣率为8%;订货量2000及以上,折扣率为10%。请绘制流程图,并编写程序。
分析:输入数据后,应首先对客户类型、价格和订货量的输入值进行简单判断,是否大于0。当这三个值均大于0才开始做应付货款的计算,否则提示输入数据错误。数据输入正确之后的处理流程图如图3.4所示。
程序代码:
![](https://epubservercos.yuewen.com/8599B6/18562449808364906/epubprivate/OEBPS/Images/image904.jpg?sign=1738964097-i15iqUHKurUXkEcNbgVNIUo7r8ArT7NI-0-b9f8f8d056d6c944bb170ed21a62f855)
![](https://epubservercos.yuewen.com/8599B6/18562449808364906/epubprivate/OEBPS/Images/image905.jpg?sign=1738964097-u4uqXIChRkxzDys10sDZmBoxmXBLsTeb-0-9b4a71c8565c03b7b6f2d917ab2decbf)
图3.4 例3-5业务流程图
程序测试:运行程序,请首先输入新客户4,标准价格10,订货量700,观察程序的运行结果。再次运行程序,输入老客户6,标准价格10,订货量700,观察程序的运行结果。
程序第一次运行结果:
![](https://epubservercos.yuewen.com/8599B6/18562449808364906/epubprivate/OEBPS/Images/image906.jpg?sign=1738964097-jVi0FNc5o6vCwvueFhaeCgCunM5oNyHE-0-1f4ccf8b6d03560f5a45b3bda9b0eb06)
程序第二次运行结果:
![](https://epubservercos.yuewen.com/8599B6/18562449808364906/epubprivate/OEBPS/Images/image907.jpg?sign=1738964097-PlMrgcZvvlRm1ONi6409qyoI13chmRnJ-0-3cb25a7d53572ffa14290061f72d741e)