青少年初学python100例-案例5 数字排序多种不同解法

题目

输入三个整数x,y,z,请把这三个数由小到大输出。

解法1

程序分析:

1、先将x与y进行比较,如果x>y则将x与y的值进行交换

2、再将x与z进行比较,如果x>z则将x与z的值进行交换

3、最后再将y与z进行比较,如果y>z则将y与z的值进行交换

4、输出即可

程序编写

x=int(input('请输入一个整数:'))
y=int(input('请输入一个整数:'))
z=int(input('请输入一个整数:'))

if(x > y):
    x,y = y,x;
if(x > z):
    x,z = z,x
if(y > z):
    y,z = z,y
print ("最后的排序为:",x,y,z)

输出结果

青少年初学python100例-案例5 数字排序多种不同解法_第1张图片

 

解法2

程序分析:

1、设置一个最大值max

2、先将x与y,z比,如果x比y,z都大,那么max=x

3、否则再用y和x,z比,如果y比x,z都大,那么max=y

4、否则max=z

5、然后判断x,y谁小,输出即可

程序编写

x = int(input("请输入:"))
y = int(input("请输入:"))
z = int(input("请输入:"))
if x > y and x > z:
    max = x
    x = z
elif y > x and y > z:
    max = y
    y = z
else:
    max = z
if x > y:
    print ("最后的排序为:",y,x,max)
else:
    print ("最后的排序为:",x,y,max)

输出结果

青少年初学python100例-案例5 数字排序多种不同解法_第2张图片

 

解法3

程序分析

利用列表的sort方法一步到位

array1 = []
for i in range(3):
    n = int(input("请输入一个整数:"))
    array1.append(n)
array1.sort()
print ("最后排列好的顺序:",array1)

输出结果

青少年初学python100例-案例5 数字排序多种不同解法_第3张图片

 

你可能感兴趣的:(python初学100例,python算法,python排序,python数字排序,python100例,python学习)