zoukankan      html  css  js  c++  java
  • 「网易官方」极客战记(codecombat)攻略-沙漠-Z字行逃窜-zig-zag-and-zoom

    (点击图片进入关卡)

    当你逃跑时,以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)
     
    本攻略发于极客战记官方教学栏目,原文地址为:
  • 相关阅读:
    mongodb.conf配置文件
    mongodb创建普通角色和普通用户
    add unique index 注意事项
    error: src refspec master does not match any
    innodb_data_file_path配置变更引发mysql重启失败
    time_zone参数配置
    主键有无检测
    gdb在线修改mysql变量
    mybatis连接数据库
    mongo登录
  • 原文地址:https://www.cnblogs.com/codecombat/p/13321013.html
Copyright © 2011-2022 走看看