Tom與Jerry誰先死?

  有以下問題:Tom的攻擊力爲113,血量爲688,Jerry的攻擊力爲112,血量爲691。每個回合他們各攻擊對方一次,請問誰先死?ide

  這是一個簡單的「人狗大戰問題」,咱們只要利用類的繼承,在原有的基礎上稍加改動便可實現:spa

 

import time

class Hero:
    def __init__(self,name,attack_level,blood):
        self.name = name
        self.attack_level = attack_level
        self.blood = blood

    def attack(self,tar):
        tar.blood = tar.blood - self.attack_level
        print('%s 攻擊 %s,%s剩餘血量爲:%s'%(self.name,tar.name,tar.name,tar.blood) )
        if tar.blood <= 0:
            print('%s Die!Game Over!'%tar.name)
            exit()
         
class People(Hero):
    def __init__(self,name,attack_level,blood):
        super().__init__(name,attack_level,blood)

    def attack(self,tar):
        super().attack(tar)

class Dog(Hero):
    def __init__(self,name,attack_level, blood):
        super().__init__(name,attack_level, blood)

    def attack(self, tar):
        super().attack(tar)

if __name__ == '__main__':
    tom = People('Tom',113,688)
    jerry = Dog('Jerry',112,691)
    while 1:
        tom.attack(jerry)
        time.sleep(1)
        jerry.attack(tom)
        time.sleep(1)
View Code

  演示以下:3d

相關文章
相關標籤/搜索