@kyklaed

Что я сделал не правильно или что я не продумал?

Всем привет, я написал небольшую программу с генератором случайных чисел, суть в том что герой и тролль по очереди наносят друг другу урон(количество урона вычисляется генератором) по достижению здоровья равному нулю ! должен произойти вывод сообщения о том кто победил, но у меня есть сомнения в правильности работы программы. подскажите в чем проблема или не доработка

Пример работы программы: по моему мнению должен был победить герой
12 11
5 5
-4 -5
Тролль победил

import random

health_hero = 20
health_troll = 20


while health_hero >0 or health_troll >0:
    damage_hero = random.randint(1,10)
    damage_troll = random.randint(1,10)
    health_hero-=damage_troll
    health_troll-=damage_hero
    print(health_hero, health_troll)
    if health_hero<0:
        print("Тролль победил")
    elif health_troll<0:
        print("Победил Герой")
  • Вопрос задан
  • 321 просмотр
Решения вопроса 1
aRegius
@aRegius
Python Enthusiast
Привет, Вадим.

while health_hero > 0 and health_troll > 0:
    damage_hero = random.randint(1, 5)
    damage_troll = random.randint(1, 5)
    health_hero -= damage_troll
    health_troll -= damage_hero
    print(health_hero, health_troll)

if health_hero > health_troll:
    print("Победил герой!")
else:
    print("Победил тролль!")
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@LenLord
android reverse
Оба имели отрицательное здоровье, но первым вы проверяете здоровье героя => победил тролль.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 03:54
1500 руб./за проект
22 нояб. 2024, в 02:56
10000 руб./за проект
22 нояб. 2024, в 00:55
500 руб./за проект