您的位置:首页 > 编程语言 > Python开发

【python】编程语言入门经典100例--5

2016-02-18 14:33 567 查看
1 #题目:输入三个整数x,y,z,请把这三个数由小到大输出。

代码:
2
3 x = int(input('请输入第一个整数:'))
4 y = int(input('请输入第二个整数:'))
5 z = int(input('请输入第三个整数:'))
6
7 if x > y:
8     num_max = x
9     if num_max < z:
10         num_max = z
11 else:
12     num_max = y
13     if num_max < z:
14         num_max = z
15
16
17 if x < y:
18     num_min = x
19     if num_min > z:
20         num_min = z
21 else:
22     num_min = y
23     if num_min > z:
24         num_min = z
25
26
27 if x > y:
28     if z > x:
29         num_mid = x
30     elif z < x and z > y:
31         num_mid = z
32     else:
33         num_mid = y
34 else:
35     if z < x:
36         num_mid = x
37     elif z > x and z < y:
38         num_mid = z
39     else:
40         num_mid = y
41
42 print('输入的三个数字按从小到大排列分别为%d,%d,%d'%(num_min,num_mid,num_max))


运行结果:
[root@HK code_100]# python code_5.py
请输入第一个整数:3
请输入第二个整数:5
请输入第三个整数:7
输入的三个数字按从小到大排列分别为3,5,7
[root@HK code_100]#


代码解释:
这个题的解题思路是通过比较,分别确认这三个数中的最大数,最小数,以及中间数,然后按顺序输出
其实按照list的排序方法最简单,但是用下面方法可以巩固知识练习判断语句。

3 x = int(input('请输入第一个整数:'))   # 接收三个整数
4 y = int(input('请输入第二个整数:'))
5 z = int(input('请输入第三个整数:'))

6 ############################################################### 求三个数中的最大值

7 if x > y:                 #当 x > y 时,。
8     num_max = x        #将x赋值给最大值
9     if num_max < z:    #如果最大值小于z
10         num_max = z    #那么z就是最大值
11 else:
12     num_max = y        #else,如果x<y,那么最大值就是y
13     if num_max < z:    #如果最大值小于z
14         num_max = z    #那么就将z赋值给最大值,这个else条件默认如果最大值大于z,那么最大值保持不变
15
16##################################################################求三个数中的最小值
17 if x < y:                             #思路与求最大值相同
18     num_min = x
19     if num_min > z:
20         num_min = z
21 else:
22     num_min = y
23     if num_min > z:
24         num_min = z
25 #################################################################求三个数中的中间值
26
27 if x > y:                               #如果x>y
28     if z > x:                       #如果z >x
29         num_mid = x              #那么z>x>y,那么x就是中间数
30     elif z < x and z > y:       #如果x>z>y
31         num_mid = z              #那么中间数就是z
32     else:                              #第三种情况就是  x>y>z,中间数是y
33         num_mid = y
34 else:                                               #  与上述类似
35     if z < x:
36         num_mid = x
37     elif z > x and z < y:
38         num_mid = z
39     else:
40         num_mid = y
41
42 print('输入的三个数字按从小到大排列分别为%d,%d,%d'%(num_min,num_mid,num_max)) #格式化按由小到大输出三个数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  z y 输入三个