# 使用while循环实现 0 -100 相加 i = 1 sum = 0 while i <= 100: # sum = sum + i sum += i i += 1 print(sum) ''' 第一次循环 i = 1, sum = 0, --> sum = sum + i = 0 + 1 = 1, sum = 1, i = 2 第二次循环 sum = 1, i = 2,--> sum = sum + i = 1 + 2 = 3, sum = 3, i = 3 第三次循环 sum = 3, i = 3, --> sum = sum + i = 3 + 3 = 6, sum = 6, i = 4 ... 第九十九次循环 sum = 4051, i = 99, --> sum = sum + i = 4051 + 99 = 4950, sum = 4950, i = 100 第100次 sum = 4950, i = 100, --> sum = sum + i = 4950 + 100 = 5050, sum = 5050, i = 101 第101次循环 不满足条件结束循环 ''' ''' 随堂练习: 1、将0-100所有3的倍数相加 2、将0-100所有3的倍数相加 含有3(13,23,37)的相加 3、基数排序思想:先判断十位数上的大小,再排个位数上的大小 46,37,42 37,46,42 37,42,46 使用基数排序思想给上面三个数进行排序,从大到小 打印出来 a = 46,b = 37, c = 42 4、归并排序 a = 46, b = 37, c = 42, d = 39 把ab放在一组,把cd放在一组 ab选出较大,cd选出较大值,然后 再把ac放在一起比较,选出谁是最大打印出来 同样的方法选出最小su偶打印出来 ''' # 1,将0-100所有3的倍数相加 i= 0 sun = 0 while i <= 100: # 判断i是否是3的倍数 if i % 3 == 0: print((i)) # 验证这个数是不是3的倍数 sun += i i += 1 print(("3的倍数相加:", sum)) print(("=================")) # 2,将0-100所有3的倍数相加 含有3(13,23,37)的相加 i = 0 sum1 = 0 while i <= 100: # 3的倍数 个位数是3 十位数是3 只要满足一个条件 全部加起来 if (i % 3 == 0) or (i % 10 == 3) or (i // 10 == 3) : print(i) sum += i i += i print(("总数:",sum)) # 3,46,37,42 # 37,46,42 # 37,42,46 # 使用基数排序思想给上面三个数进行排序,从大到小 打印出来 # a = 46,b = 37, c = 42 a = 46 b = 37 c = 42 a10 = a // 10 b10 = b // 10 c10 = c // 10 print(a10,b10,c10) if a10 > b10 and a10 > c10: print(f"最大的数就是a:{a}") elif b10 > c10 and b10 > a10: print(f"最大的数就是b:{b}") elif c10 > a10 and c10 > b10: print(f"最大的数就是c:{c}") elif a10 == b10: if (a % 10) > (b % 10): print("a大于b") elif (a % 10) > (b % 10): print("a等于b") else: print("a小于b") elif a10 == c10: if (c % 10) > (b % 10): print("c大于b") elif (c % 10) > (b % 10): print("c等于b") else: print("c小于b") elif b10 == c10: if (b % 10) > (c % 10): print("b大于c") elif (b % 10) > (c % 10): print("b等于c") else: print("b小于c")