1 Востаннє редагувалося Chemist-i (07.05.2023 13:10:44)

Тема: Потрібно редагувати код

Ось завдання
Є два види персонажів:
- Герої (Г, що володіють наступними характеристиками: сила, швидкість руху, шкода, яку
може нанести, шкода, яку отримує.
- Антигерої (А), що володіють наступними характеристиками: сила, здатність допомогти
представнику свого виду.
(характеристики студент може змінювати самостійно, але слід залишити базові)
Спроектувати та реалізувати функції, які передбачають взаємодію наступних персонажів:
Г + Г
А + А
Г + А
А + Г

Ось код С++

#include <iostream>

// Клас Герой
class Hero {
private:
    int strength;
    int speed;
    int damage;
    int received_damage;

public:
    // Конструктори
    Hero() : strength(10), speed(5), damage(5), received_damage(0) {}

    Hero(int s, int sp, int d, int rd) : strength(s), speed(sp), damage(d), received_damage(rd) {}

    // Методи атаки та отримання ушкоджень
    void attack(Hero& enemy) {
        enemy.receive_damage(damage);
    }

    void receive_damage(int d) {
        received_damage += d;
    }

    // Методи для отримання значень полів
    int get_strength() const {
        return strength;
    }

    int get_speed() const {
        return speed;
    }

    int get_damage() const {
        return damage;
    }

    int get_received_damage() const {
        return received_damage;
    }
};

// Клас Антигерой
class Antihero {
private:
    int strength;
    int help;

public:
    // Конструктори
    Antihero() : strength(5), help(10) {}

    Antihero(int s, int h) : strength(s), help(h) {}

    // Метод допомоги
    void provide_help(Hero& ally) {
        ally.receive_damage(-help);
    }

    // Методи для отримання значень полів
    int get_strength() const {
        return strength;
    }

    int get_help() const {
        return help;
    }
};

// Функція для взаємодії Героя та Антигероя
void hero_antihero_interaction(Hero& hero, Antihero& antihero) {
    hero.attack(antihero); // Герой атакує Антигероя
    antihero.provide_help(hero); // Антигерой допомагає Герою
}

// Функція для взаємодії Героїв
void hero_hero_interaction(Hero& hero1, Hero& hero2) {
    hero1.attack(hero2);
    hero2.attack(hero1);
}

// Функція для взаємодії Антигероїв
void antihero_antihero_interaction(Antihero& antihero1, Antihero& antihero2) {
// Взаємодія Антигероїв відсутня в початковій реалізації, можна додати її у цю функцію
// Наприклад, дописавши наступний код:
antihero1.provide_help(antihero2);
antihero2.provide_help(antihero1);
}

int main() {
// Створення об'єктів Героя та Антигероя
Hero hero1(20, 10, 10, 0);
Hero hero2(15, 8, 8, 0);
Antihero antihero1(7, 15);
Antihero antihero2(10, 5);

// Взаємодія перших двох Героїв
hero_hero_interaction(hero1, hero2);

// Взаємодія Героя та Антигероя
hero_antihero_interaction(hero1, antihero1);

// Взаємодія двох Антигероїв
antihero_antihero_interaction(antihero1, antihero2);

// Виведення статистики ушкоджень
std::cout << "Hero 1 received " << hero1.get_received_damage() << " damage.\n";
std::cout << "Hero 2 received " << hero2.get_received_damage() << " damage.\n";
std::cout << "Antihero 1 received " << antihero1.get_received_damage() << " damage.\n";
std::cout << "Antihero 2 received " << antihero2.get_received_damage() << " damage.\n";

return 0;
};

2

Re: Потрібно редагувати код

До ChatGPT не зверталися?

3

Re: Потрібно редагувати код

Звертався але він не дописує мені помилки до кінця лише половину коду напише і зупиняється

4 Востаннє редагувалося Droid 77 (07.05.2023 15:20:37)

Re: Потрібно редагувати код

То виходить код якась маячня що навіть найвишчий розум тупить? ))
Яка ціна питання, які терміни?

5

Re: Потрібно редагувати код

Ціну пропонуйте Ви, а терміни 30 днів

6 Востаннє редагувалося Droid 77 (07.05.2023 15:52:10)

Re: Потрібно редагувати код

Зазвичай робочий день від 25 до 500 доларів США. Залежить від кваліфікації розробника, іноді від складності проекту.
В даному випадку що треба отримати як кінцевий результат? Бібліотеку для якогось двигуна, консольку (аби щось було), складова до проекту гри чи щось подібного? Що саме?

P. S.
Виходячи з мінімізації в формулюванні технічного завдання це завдання для фахівця з оплатою 500 доларів за 8 робочих годин.

7

Re: Потрібно редагувати код

sypertomat58 написав:

не дописує мені помилки до кінця лише половину коду напише і зупиняється

Треба йому писати щось на зразок "ти мені надрукував ось таку останню стрічку повністю рядок_з_кодом_тут, а далі не закінчив стрічку; продовжи виводити решту коду, починаючи з вже виведеної стрічки повністю".

Краще розуміє англійською. Приблизно так: "continue code output from the last fully printed line... some_code_here".

Те саме обмеження на кількість рядків за один раз і в преміум підписці.

8 Востаннє редагувалося frz (07.05.2023 18:25:10)

Re: Потрібно редагувати код

Droid 77 написав:

То виходить код якась маячня що навіть найвишчий розум тупить? ))

Бо треба тим так званим "розумом" вміти користуватися.

https://replace.org.ua/post/182640/#p182640