1.用传统方法计算一个数的二进制
1.只能计算小于2**16的数字
1 i = 17 2 num_2 = int(input("输入一个数字:").strip()) 3 while True: 4 i -= 1 5 if i < 0: 6 break 7 if 2 ** i > num_2: 8 print(0,end="") 9 else: 10 print(1,end="") 11 num_2 = num_2 - 2 ** i
2.用平常数学方法解
num_2 = int(input("输入一个数字:").strip()) l = [] while True: b = num_2 // 2 a = num_2 % 2 num_2 = b l.append(a) if b == 0: break l.reverse() for i in l: print(i,end="")
2.用特殊字符输出一个指定高和底的空心长方形
1 gao = int(input("输入高:").strip()) 2 di = int(input("输入底").strip()) 3 count1 = 1 4 while count1 <= gao: 5 count2 = 0 6 while count2 <= di: 7 count2 += 1 8 if 2 <= count1 < gao and 2 <= count2 <= di: 9 print(" ",end="") 10 continue 11 print("#",end="") 12 print() 13 count1 +=1
结果:
3.用特殊字符实现LED灯效果
1 a = " ********" 2 b = " * " 3 c = " *" 4 d = " * *" 5 num = [ 6 [a,d,d,d,d,d,a], 7 [c,c,c,c,c,c,c], 8 [a,c,c,a,b,b,a], 9 [a,c,c,a,c,c,a], 10 [d,d,d,a,c,c,c], 11 [a,b,b,a,c,c,a], 12 [a,b,b,a,d,d,a], 13 [a,c,c,c,c,c,c], 14 [a,d,d,a,d,d,a], 15 [a,d,d,a,c,c,c] 16 ] 17 int1 = input("输入数字:") 18 for i in range(7): 19 for j in int1: 20 print(num[int(j)][i], end=" ") 21 print()
结果: