(点击图片进入关卡)
清扫深谷,但别让爆炸伤及你的朋友!
简介
农民被困在峡谷中,但我们只有一门毒药炮。
找到 敌人生命值的总和 ,告诉他们开火需要多少的毒药!
如果用了太多毒药,农民也会中毒身亡!
默认代码
# 计算所有食人魔的总生命值。
def sumHealth(enemies):
# 创建一个变量,将它设为0后开始运算
totalHealth = 0
# 初始化循环索引为0
enemyIndex = 0
# 當 計數 小于敌人數列長度的時候
# 将当前敌人的生命值添加到总生命值里
# 让 index 递增
return totalHealth
# 使用加农炮来打败食人魔。
cannon = hero.findNearest(hero.findFriends())
# 加农炮可以穿透墙壁。
enemies = cannon.findEnemies()
# 计算食人魔生命值的总和。
ogreSummaryHealth = sumHealth(enemies)
hero.say("使用 " + ogreSummaryHealth + " 克。")
概览
我们经常要把很多对象的一些属性相加。
为了计算总和,我们遍历所有对象,将需要的属性值加到 累加器(accumulator) 中:
coins = hero.findItems()
totalValue = 0
# 累加器
index = 0
while index < len(coins):
totalValue = coins[index].value
index += 1
毒气攻击解法
# 计算所有食人魔的总生命值。
def sumHealth(enemies):
# 创建一个变量,将它设为0后开始运算
totalHealth = 0
# 初始化循环索引为0
enemyIndex = 0
# 當 計數 小于敌人數列長度的時候
while enemyIndex<enemies.length:
# 将当前敌人的生命值添加到总生命值里
totalHealth += enemies[enemyIndex].health
# 让 index 递增
enemyIndex += 1
return totalHealth
# 使用加农炮来打败食人魔。
cannon = hero.findNearest(hero.findFriends())
# 加农炮可以穿透墙壁。
enemies = cannon.findEnemies()
# 计算食人魔生命值的总和。
ogreSummaryHealth = sumHealth(enemies)
hero.say("使用 " + ogreSummaryHealth + " 克。")
本攻略发于极客战记官方教学栏目,原文地址为:
来源:oschina
链接:https://my.oschina.net/u/4441837/blog/4486374