第42716题 程序题
买文具

图片

图片

【题目描述】

小杨想用零花钱买一些文具。他有一个特别的买文具规则:

  1. 每次他只买一个文具,而且这个文具的价格正好等于他当前拥有零花钱的一半。
  2. 只要他当前拥有的零花钱大于或等于 1 元,他就会继续买下一个文具。
  3. 当他当前拥有的零花钱小于 1 元时,就不再买了。

小杨一开始有 S 元,默认小猫角色和白色背景,请你编写一个程序,帮他算一算,他最多能买到多少个文具?最后输出的答案存入变量 ans 中。

【输入描述】

新建变量“S”,表示小杨最初的零花钱(单位:元)。

注意:小杨的零花钱 $S$ 不超过 $10000$ 元,且最多只有 1 位小数(例如 10.0、79.0)。

如下图所示:

图片

【输出描述】

新建变量“ans”,一个正整数,表示小杨最多能买的文具个数。

如下图所示:

图片

【样例解释】

  1. 小杨有 10.0 元,他买了一盒彩笔,价格正好是 10.0 元的一半 = 5.0 元,现在他拥有 5.0 元。
  2. 现在他有 5.0 元(≥ 1 元),他买了一本贴纸,价格正好是 5.0 元的一半 = 2.5 元,现在他拥有 2.5 元。
  3. 现在他有 2.5 元(≥ 1 元),他买了一个橡皮擦,价格正好是 2.5 元的一半 = 1.25 元,现在他拥有 1.25 元。
  4. 现在他有 1.25 元(≥ 1 元),他买了一块磁铁,价格正好是 1.25 元的一半 = 0.625 元,现在他拥有 0.625 元。
  5. 现在他只有 0.625 元,小于 1 元,所以不再买文具。

【样例1】

输入:

S = 10.0

输出:

ans = 4

【样例2】

输入:

S = 79.0

输出:

ans = 7

【注意事项】

  1. 变量名的拼写(包括大小写)要和题目完全一致。
  2. 输入变量直接赋值即可,无需使用“询问并等待”积木块。
  3. 输出结果存放在对应变量中即可,无需使用“说…”或“说…,2 秒”积木块。
{{ option.label }}
子题{{ index + 1 }} {{ child.type_label }}
{{ option.label }}
✓ 正确 ◐ 部分正确 ✗ 错误
编辑模式
程序运行统计
暂无判题统计
知识点:
提交{{ questionInfo.stats ? questionInfo.stats.submit_count : 0 }}次 正确率{{ statsAccuracy }}%
答案解析