1 # 十进制转化二进制
2
3 """
4 知识点:
5 1、数据类型转换
6 2、赋值运算符,注意:一定要先定义变量
7 3、逻辑运算符,or and not
8 4、Wile/for循环
9 5、算术运算符,整除'//',求余'%'
10 6、字符串索引
11 """
12
13
14 while True:
15
16 # 提示输入一个整数
17 num = float(input('请输入整数:'))
18
19 # 定义变量
20 b_inv = ''
21 b_order = ''
22
23 j = 1
24
25 # 退出程序
26 if num == int(False): # 等价于num == 0
27 print('退出转换!')
28 break # 结束循环
29
30 # 重新输入
31 if num < 0 or num > int(num):
32 print('请输入正整数!!!')
33 continue # 结束本次循环,开始下次循环
34
35 # 倒序写入
36 while not False: # not False == True
37
38 # 能被2整除写入'0'
39 if num % 2 == 0:
40 b_inv += '0'
41
42 # 不能被2整除写入'1'
43 else:
44 b_inv += '1'
45
46 # 跳出循环条件
47 if num // 2 == 0:
48 break # 结束循环
49
50 num //= 2 # 整除2
51 j += 1 # 循环累加
52
53 # 顺序输出
54 for i in range(j):
55
56 # 再倒序写入
57 b_order += b_inv[-(i + 1)]
58
59 print('它的二进制是:{}'.format(b_order))