python输入五个数按从大到小排列输出 python输入5个数求大小

您所在的位置:网站首页 python一组数字按小到大输出 python输入五个数按从大到小排列输出 python输入5个数求大小

python输入五个数按从大到小排列输出 python输入5个数求大小

2024-06-03 13:55| 来源: 网络整理| 查看: 265

学习Python第五天

今天周末,自习,简简单单写几个代码

(老师如果看到我这篇,请看上一篇,你要求的我昨天已经写好了)

第一题输入三个整数,按照从大到小的顺序输出这个题,写的时候想把它写的高级一点,就是不局限于三个数而是更多,下面是我的过程1.1版本

我想的是将大的放在列表开头,小的就追加在列表末尾

nums = [] count = 0 for _ in range(3): num = int(input('请输入一个整数')) if num > count:#和比较大小 nums.insert(0, num) count = num elif num < count: nums.append(num) for i in nums: print(i)

然后就出错了,如果先输入x1,在输入x2,再输入x3,其中x1>x2>x3,或者x3>x2>x1那么没问题,

但是如果x1>x3>x2就会出错

于是就有了1.2版本

1.2版本

现在输入多少个数字都可以,这里想要两个空列表,第一个放输入的数据,第二个放待排序的数据,

nums = [] counts = [] for _ in range(6): num = int(input('请输入一个数')) nums.append(num)#先将输入的数据导入第一个空列表, for _ in range(len(nums)):#循环列表长度次数 counts.append(max(nums))#找出列表里最大值依次追加到第二个空列表 nums.remove(max(nums))#将已经追加的元素删除,才能找下一个最大元素 for i in counts: print(i)第二题向列表中添加10个随机整数,找出其中第2大的元素这个题比较简单一点第四行第五行二选一,因为没有说明范围,就以为是自己输入数据,或者随便规范一个范围思路和上面一题大致相同import random nums = [] for _ in range(10): num = random.randrange(1, 10000000000000) # num = int(input('请输入整数num = ')) nums.append(num)#将数据循环导入列表 pass nums.remove(max(nums))#删除列表中最大的元素,此时第二大的就是最大的 print(max(nums))#直接输出此时最大的元素即可第三题21根火柴游戏:有21根火柴,人和计算机轮流拿,人先拿(输入拿几根)计算机后拿,每次至少1根最多4根,拿到最后一根火柴的算输,要确保计算机一定可以获胜!这题,极其大脑壳一开始的思路是五根火柴,当剩下五根的时候想办法让人拿到最后一根即可首先随便拿,使用while循环(因为不知道拿几次才会最后剩下五根),当火柴数量小等于5破出循环1.1版本#错的, 可以运行但是不能保证每次计算机每次获胜 import random count = 21 num = 0 num_computer = 0 while count > 5: print(count) num = int(input('拿几根,少于火柴数,且在1~4之间')) count -= num num_computer = random.randrange(1, 4) count -= num_computer pass if count - num


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3