Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- using namespace std;
- // Клас Герой
- class Hero {
- public:
- string type; // Тип персонажа
- int strength; // Сила
- int speed; // Швидкість руху
- int damage; // Шкода, яку може нанести
- int receivedDamage; // Шкода, яку отримує
- // Конструктор
- Hero() {
- type = "Герой";
- strength = 10;
- speed = 5;
- damage = 20;
- receivedDamage = 10;
- }
- // Функція атаки
- void attack() {
- cout << type << " атакує та наносить " << damage << " одиниць шкоди.\n";
- }
- // Функція отримання пошкоджень
- void takeDamage() {
- cout << type << " отримує " << receivedDamage << " одиниць шкоди.\n";
- }
- };
- // Клас Антигерой
- class AntiHero : public Hero {
- public:
- // Конструктор
- AntiHero() {
- type = "Антигерой";
- strength = 8;
- speed = 3;
- damage = 15;
- receivedDamage = 12;
- }
- // Функція допомоги герою
- void help(Hero& hero) {
- cout << type << " допомагає герою " << hero.type << ".\n";
- // Реалізація допомоги герою
- }
- };
- int main() {
- // Створення героя і антигероя
- Hero hero;
- AntiHero antiHero;
- // Взаємодія між героями
- cout << "Герой + Герой:\n";
- hero.attack();
- hero.takeDamage();
- // Взаємодія між антигероями
- cout << "Антигерой + Антигерой:\n";
- antiHero.attack();
- antiHero.takeDamage();
- // Взаємодія між героєм і антигероєм
- cout << "Герой + Антигерой:\n";
- antiHero.help(hero);
- hero.takeDamage();
- // Взаємодія між антигероєм і героєм
- cout << "Антигерой + Герой:\n";
- hero.attack();
- antiHero.takeDamage();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment