小明今年18岁了,正常来说,应该在蛋糕上,插入18跟蜡烛,但是小明不是一般人,他是程序员,
他考虑到18的进制是10010,所以他在蛋糕上插入了五个蜡烛,点燃了其中两跟,问:
如果用户输入年龄,请你安排插入的蜡烛数和点燃的蜡烛数
输入:n n>=1 n <=200
输入x, y x表示蜡烛总数量,y表示点燃的蜡烛数量
案例1
输入 18
输出 5, 2
案例2:
输入 8
输出 4 1
代码如下:
- num = int(input("请输入你的年龄:"))
- if num < 0:
- print("请重新输入你的年龄:")
- num = int(input("请输入你的年龄:"))
- else:
- binary = " "
- while num > 0:
- remainder = num % 2
- binary = str(remainder) + binary
- num = num // 2
- print(f"你的年龄用二进制表示为:{binary}")
-
- one_count = binary.count('1')
- zeros_count = binary.count('0')
- print(f"蜡烛的总数量为:{one_count + zeros_count},点燃蜡烛的数量为:{one_count}")