-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathHW4_bonus_dragonbattle.py
115 lines (94 loc) · 5.8 KB
/
HW4_bonus_dragonbattle.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# Королю потрібно вбити дракона, але кошти його казни обмежені.
# Потрібно створити програму, яка допоможе розрахувати
# мінімальну кількість копійників, необхідних для вбивства дракона.
# Дані про очки здоров'я та атаки дракона і одного копійника вводяться з клавіатури.
# Захист, удача, мораль, меткість та інше не враховуються.
# Копійники наносять удар першими
# (загальний завданий урон — це сума атак усіх живих копійників).
# Якщо атака дракона перевищує значення очок здоров'я копійника
# (наприклад, у копійника HP 10, а атака дракона — 15),
# то копійник гине, а залишковий урон впливає на інших живих копійників
import os
os.system('cls')
print ("""У далекому королівстві,
серед зелених пагорбів і блакитних озер,
розкинулося мирне людське королівство.
Та одного дня на горизонті з*явився дракон.
Його крила закривали сонце,
а рев змушував здригатися
навіть найсміливіших воїнів.
Щодня дракон тероризував мирних селян.
Жахливі новини про нього дійшли до самого Короля.
І тоді Король вирішив відправити військо
щоб дати відсіч злому супостату.
ПРОДОВЖИТИ...""", end='')
input()
os.system('cls')
print("""Король скликав військову нараду.
На неї прийшли найкращі зброярі, стратеги та науковці.
Першим слово тримав головний зброяр Михайло:
- Королю та шановне Товариство, для перемоги над душогубом
ми виковали найкращі мечі та списи, що проб*ють найміцнішу броню.
А також найновіші щити з вібраніуму для захисту від
зпопеляючого подиху звіра\n""")
unit_atk = int(input("Введіть атаку воїнів "))
print("""\nПісля Михайла виступив магістр алхімії королівства Зігмунд:
- Шановна Рада, від ордену магів та алхіміків ми надамо
найкращі еліксири, які зроблять наших воїнів сильніше, спритніше
та витриваліше.\n""")
unit_hp = int(input("Введіть показник здоровя воїнів "))
print("""\nДалі слово взяв командир розвідників Буданович:
- Ми відпраили групу найкращих розвідників
для спостереження за драконом. За останніми даними зараз він
перебуває у Печері Смерті, якщо виступити зараз то матитмемо можливість
застати його зненацька. Також група повідомляє, що \n""")
drag_hp = int(input("Показник здоров*я чудовиська: "))
drag_atk = int(input("Атака чудовиська становить: "))
print("\nПісля довгої розмови та підрахунків Рада вирішила: ")
army = 0
n = True
while n == True:
army_atk = army * unit_atk
army_hp = army * unit_hp
army += 1
drag_hp_count = drag_hp
count_life = army
while drag_hp_count > 0 and army_hp > 0:
drag_hp_count -= army_atk
count_dead = drag_atk // unit_hp
count_life -= count_dead
army_atk = count_life * unit_atk
army_hp = count_life * unit_hp
if drag_hp_count <= 0:
n = False
print("\nДля перемоги над драконом знадобиться армія з ", end='')
print(army, end='')
print(" солдат\n\n")
print("ПРОДОВЖИТИ...")
input()
os.system('cls')
print("""\nІ ось настав вирішальний день.\n
Армії людей вдалося застати дракона сплячим і нанести перший удар\n""")
army_atk = army * unit_atk
army_hp = army * unit_hp
while drag_hp > 0 and army_hp > 0:
print("Армія людей атакує і наносить шкоду: ",end='')
print(army_atk)
drag_hp -= army_atk
if drag_hp <= 0:
print("Нарешті армія людей перемогла дракона!")
break
print("Тепер здоров*я дракона становить: ", end='')
print(drag_hp)
print("Спопеляючим подихом дракон наносить: ", end='')
print(drag_atk, end=' ')
print("одиниць шкоди")
count_dead = drag_atk // unit_hp
print(count_dead, end='')
print(" солдат помирає")
army = army - count_dead
print(army , end='')
print(" солдат залишається в строю")
army_hp = army * unit_hp
army_atk = army * unit_atk
print("===========================")