首页 理论教育 Python程序设计基础教程:3个选择结构程序实例

Python程序设计基础教程:3个选择结构程序实例

时间:2023-11-16 理论教育 版权反馈
【摘要】:分析:本题先要判断系数a是否为0,再判断b2-4ac的值,所以程序是嵌套的选择结构。如果a=0,则不满足一元二次方程要求;a≠0时,①当b2-4ac>0时,方程有两个实根;②当b2-4ac=0时,方程有一个实根;③当b2-4ac<0时,方程无实根。图3-16程序运行过程1图3-17程序运行过程2编写程序,输入年月,输出该月的天数。当比较的数较多时,程序也会变得很复杂。图3-20程序运行过程1图3-21程序运行过程2

Python程序设计基础教程:3个选择结构程序实例

【例3-7】编写程序,从键盘输入a、b、c的值,计算一元二次方程ax2+bx+c=0的根。

分析:本题先要判断系数a是否为0,再判断b2-4ac的值,所以程序是嵌套的选择结构。如果a=0,则不满足一元二次方程要求;a≠0时,①当b2-4ac>0时,方程有两个实根;②当b2-4ac=0时,方程有一个实根;③当b2-4ac<0时,方程无实根。方程解输出的格式根据需要进行控制。

程序如下:

程序多次运行结果如下:

程序运行过程如图3-16、图3-17所示。

图3-16 程序运行过程1

图3-17 程序运行过程2

【例3-8】编写程序,输入年月,输出该月的天数。

分析:1、3、5、7、8、10、12月份有31天,4、6、9、11月有30天,2月闰年29天,平年28天。输入的月份是否在相应的月份序列中可以使用成员运算符in判断。

程序如下:

程序运行结果如下:

程序运行过程如图3-18、图3-19所示。

图3-18 程序运行过程1

(www.xing528.com)

图3-19 程序运行过程2

【例3-9】输入3个数,输出其中最大的数。

分析1:将每一个数与其他两个数进行比较以确定其中的最大值。如果x1>x2的同时x1>x3,那x1就是最大值,依此类推。当要比较的数较多时,表达式较复杂,算法冗余大,效率低。

程序如下:

分析2:为了解决第1种算法的不足,采用决策树的方法。假设程序从x1>x2开始,如果条件为真,则判断x1和x3谁是最大数;如果条件为假,则判断x2和x3谁是最大数。当比较的数较多时,程序也会变得很复杂。

程序如下:

分析3:顺序扫描每一个数,找到最大的那个数。算法清晰简洁,可以推广到更多数比较的问题。

程序如下:

程序运行结果如下:

程序运行过程如图3-20、图3-21所示。

图3-20 程序运行过程1

图3-21 程序运行过程2

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈