将多个整数排序(从大到小或者从小到大)

一、交换变量值。

1、在我们排序之前要先掌握交换变量值。

在这里插入图片描述

  • 这是输出的效果:
  • 在这里插入图片描述

2、接下来我们再试试三个数。

在这里插入图片描述

  • 输出的结果:
    在这里插入图片描述

二、接下来就是我们怎么去判断一个最大的数了(以四个数为例):

  • 首先我们要知道如何去将最大的一个数排在最前面,这里我们将 a 作为最大的数,那么我们就要想办法把 变量a 存储的值变为最大的
#降序
if a < b:
    t = a		#在这个条件中如果 a < b那么我们第一个交换变量就会把 b 的值交还给 a 因为我们需要  a  最大
    a = b		#以下的其他条件也是和这个条件相同,要让他们一个个的去比较然后把较大的值依次放在 a b c d 中以此类推
    b = t
if a < c:
    t = a
    a = c
    c = t
if a < d:
    t = a
    a = d
    d = t
if b < c:
    t = b
    b = c
    c = t
if b < d:
    t = b
    b = d
    d = t
if c < d:
    t = c
    c = d
    d = t
print('降序:', a, b, c, d)
  • 如果要从小到大话,想比大家也猜到了我们只需要把判定的 小于 与 大于 做替换这样就可以把最小的值赋给 a 最大值给 d,以此类推

三、用简便的方式排序

  • 上述方法有种弊端,就是我们在写交换变量的时候容易出错,所以我们采用另外一种方法更为简便
  • 这里我放入的是整个源代码
'''
功能:4个整数排序简便方法
作者:Sherry
日期:2021.11.4
'''
#设置值
a = 21
b = -152
c = 520
d = 1314

#创建一个列表将 a b c d 包含其中
List = [a, b, c, d]
List.sort(reverse=True) 
#若只写sort()的话默认是升序  而reverse中有两个值  一个是False代表着升序 一个是True代表着降序

#打印
print(List)

  • 输出
    在这里插入图片描述

最后附上源码

'''
功能:4个整数排序
作者:Sherry
日期:2021.11.4
'''
#定义四个值
a = 21
b = -152
c = 520
d = 1314

#建立循环   注:循环内t始终是一个代替的容器,就像是数学里面的设置了这个变量,但是不求(设而不求)的原理

#升序
if a > b:
    t = a  # 用一个盒子 t 来将 a 里的值导出,让 a 这个盒子为空才能进行下一步赋值
    a = b  # 将 b 的值赋给 a
    b = t  # 将 t 的值赋给 b , 因为 t 里面的值是 a 所以此时的 b 就是一开始的 a
if a > c:
    t = a
    a = c
    c = t
if a > d:
    t = a
    a = d
    d = t
if b > c:
    t = b
    b = c
    c = t
if b > d:
    t = b
    b = d
    d = t
if c > d:
    t = c
    c = d
    d = t
print('升序:', a, b, c, d)

#降序
if a < b:
    t = a
    a = b
    b = t
if a < c:
    t = a
    a = c
    c = t
if a < d:
    t = a
    a = d
    d = t
if b < c:
    t = b
    b = c
    c = t
if b < d:
    t = b
    b = d
    d = t
if c < d:
    t = c
    c = d
    d = t
print('降序:', a, b, c, d)

总结

关于排序问题我们要先想着让最大的排在第一个,或者是让最大的一个值放在一个变量里,然后再把这个变量放在第一个。

欢迎留言、私信,有不懂的欢迎提出

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫腻余腥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值