python笔记3:依次输入3个数排序打
#方法1:if语句,练习逻辑能力
num1 = int(input('请输入第一个数:'))
num2 = int(input('请输入第二个数:'))
num3 = int(input('请输入第三个数:'))
if num1 >= num2:
if num1 >= num3:
if num2 >= num3:
print(num3,num2,num1)
else:
print(num2,num3,num1)
else:
print(num2,num1,num3)
else:
if num1 >= num3:
print(num3,num1,num2)
elif num2 >= num3:
print(num1,num3,num2)
else:
print(num1,num2,num3)
#方法2:max min函数排序
num1 = int(input('请输入第一个数:'))
num2 = int(input('请输入第二个数:'))
num3 = int(input('请输入第三个数:'))
nums = []
nums.append(num1)
nums.append(num2)
nums.append(num3)
while True:
cur =min(nums)
print(cur)
nums.remove(cur)
if len(nums) == 1:
print(nums[0])
break
#方法3:sort函数排序
num1 = int(input('请输入第一个数:'))
num2 = int(input('请输入第二个数:'))
num3 = int(input('请输入第三个数:'))
nums =[num1,num2,num3]
nums.sort()
print(nums)
#方法4冒泡法排序
nums = [4,3,5,1]
for i in range(len(nums)-1):
for j in range(len(nums)-i-1):
if nums[j] > nums[j+1]:
nums[j],nums[j+1] = nums[j+1],nums[j]
print(nums)
#方法5:冒泡法排序改进
count_swap = 0
count = 0
nums = [2,3,5,6]
for i in range(len(nums)-1):
flag = False
for j in range(len(nums)-i-1):
count +=1
if nums[j] > nums[j+1]:
nums[j],nums[j+1] = nums[j+1],nums[j]
flag = True
count_swap +=1
if not flag:
break
print(nums,count_swap,count)
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341