(点击图片进入关卡)
当你逃跑时,以Z形轨迹跑。
简介

你需要逃离死亡峡谷。弓箭手在你的后方射箭攻击。
使用求余的力量,躲避攻击!
求余运算会将数字限定在一个最大数字之下。
本例中, mod9 函数应该在 n 大于或等于 9 时用 n 减去 9 。
默认代码
# 从死亡峡谷逃出!
# 使用真正的求余函数走出Z字形路线。
# 该函数返回一个从0到15的值:
def mod15(n):
while n >= 15:
n -= 15
return n
# 这个函数应该会反馈一个从0到9的值
def mod9(n):
# 在返回前使用 while 循环修改参数。
return n
# 不要更改以下代码:
while True:
time = hero.time
if time < 30:
y = 10 + 3 * mod15(time)
else:
y = 20 + 3 * mod9(time)
x = 10 + time
hero.moveXY(x, y)
概览
求余运算符 modulo 返回两数相除的余数。 modulo 函数要返回一个 0 到 X 之间的值,其中 X 是求余的运算对象。
输入参数 ( n ) 小于 X 时返回输入的数字。 不过在 n 大于或等于 X 时,就需要用 n 减去 X ,直到小于 X 。
第二个函数 mod9 需要返回 0 到 9 之间的值。 在示例代码里,它仅被用于 n < 9 的情况。 而当 n >=9 ,它会返回错值。 为完成函数,你需要添加条件循环 while 。 大于或等于 9 时 -- while (n >= 9) .如果为真,那么减去 9 -- n = n - 9
小心,别改变 while 下面的代码。
Z字行逃窜 解法
# 从死亡峡谷逃出!
# 使用真正的求余函数走出Z字形路线。
# 该函数返回一个从0到15的值:
def mod15(n):
while n >= 15:
n -= 15
return n
# 这个函数应该会反馈一个从0到9的值
def mod9(n):
while n >= 9:
n -= 9
return n
# 不要更改以下代码:
while True:
time = hero.time
if time < 30:
y = 10 + 3 * mod15(time)
else:
y = 20 + 3 * mod9(time)
x = 10 + time
hero.moveXY(x, y)
本攻略发于极客战记官方教学栏目,原文地址为: