python - 输入一个数字 N,然后程序继续输出所有小于 N 的 2 的幂。我该如何继续?
问题描述
所以现在我有这个:
number = int(input("Enter a number: "))
exponent = 0
while exponent <= number:
result = 2 ** exponent
exponent = exponent + 1
print(result)
例如:如果我输入 21,它会打印出所有 21 个数字,但我需要程序打印出小于 21 的数字,如下所示:
1
2
4
8
16
但并非所有 21 个数字。
解决方案
请改用此循环:
while 2 ** exponent <= number:
print(2 ** exponent)
exponent = exponent + 1
推荐阅读
- excel - Excel 多级数组公式与部分字符串匹配以求和结果单元格
- mongodb - 基于ObjectID的Mongodb Aggregation中的查询问题
- reactjs - React 函数的返回类型是什么
- ios - 提交到 AppStore Connect 时不支持 iOS 13
- angular - Angular 8后退按钮和参数
- python - Python 访问从导入的函数返回元组
- python - 由于“断言失败”而导致屏蔽失败......sameSize
- database - Csharp中的sqldataAdapter以更简单的方式?
- python - conda-forge 能否在安装 MKL 版本的软件包时优先于默认值?
- spring - 异常异常。无法获取当前线程的事务同步会话