逢 7 就跳过
挑战规则:
1. 仔细阅读题目描述,在实验环境中完成任务
2. 完成任务后点击步骤右下角的提交检测按钮
3. 系统自动评测并给出是否通过的信息
挑战:逢 7 就跳过
介绍
不知道你有没有玩过“逢 7 过”的游戏,游戏规则很简单:
几个人轮流报数,凡遇到 7 的倍数,或含 7 的数字就要跳过,否则就算失败。
今天我们就用 Python 来打印 1 到 100 之间,所有满足条件的数字。
目标
- 请在
/home/shiyanlou
目录下创建jump7.py
文件(请确保目录正确,否则无法通过挑战) - 在文件中写入代码,打印 1 到 100 之间(包含 1 和 100),不是 7 的倍数、且不含 7 的数字,每行打印一个数字。
- 完成挑战后,请把文件复制到
/home/shiyanlou/Code
目录内,然后点击右侧工具栏的「 下载代码 」,把代码下载到本地, 我们在下个挑战中还会用到这段代码。
知识点
- Python 开发环境
- int 类型
- 变量
- 运算符
- while 循环
- 条件判断
提示
⚠️ 前方高能,有剧透风险,喜欢挑战的同学请先独立思考,然后借着百度、谷歌来解出题目。
在实际的开发工作中,大部分工作也是靠着经验 + 思考 + 搜索引擎来完成的,你可以提前熟悉这个感觉。
💡(一)
开发中,我们经常要先构思框架,再优化功能。
所以在这个挑战中,你可以先用循环,写出打印出 1 到 100 间的数字的程序,之后再往里面加条件判断。
💡(二)
7 的倍数,可以理解为除以 7 余数为 0 的数;
a % 7 == 0
在 1 到 100 这个区间里:
- 个位上是 7 的数,即除以 10 余 7 的数;
a % 10 == 7
- 十位上是 7 的数,即除以 10 取整数为 7 的数。
a // 10 == 7
如果满足这些条件,就跳过;如不满足,则打印。可以用 elif
或 or
来加判定条件~
💡(三)
请保证文件名和存储路径都满足题目要求。
PS:还记得我们在第一节实验中,体验过的那个对战小游戏吗?其实你现在已经可以把那个游戏编写出来了!完成挑战后,不妨尝试一下~如果有什么问题,记得在群里和小伙伴们讨论一下。
<details open="" style="box-sizing: border-box; display: block; margin-top: 0px; margin-bottom: 0px !important;"><summary style="box-sizing: border-box; display: list-item; cursor: pointer; outline: none;">参考答案</summary>
使用 while:
a = 0
while a < 100:
a = a + 1
if a % 7 == 0 or a % 10 == 7 or a // 10 == 7:
continue
else:
print(a)
使用 for:
for a in range(1,101):
if a % 7 == 0 or a % 10 == 7 or a // 10 == 7:
continue
else:
print(a)