Пример кода с пары: https://ideone.com/P7Vpy8
Задачи нужно отправлять на kiskachi.maria@ya.ru. Тема письма: "11е, <Ваша фамилия>, oop3". Если у вас один файл с кодом, то можно прислать только .cpp файл.
-
Создайте класс Human с полями name, last_name и second_name. Конструктором от 3 параметров и методом "string get_full_name()".
Создайте класс Student, унаследованный от класса Human. У студента есть дополнительное поле "vector[int] scores", конструктор от 4 аргументов и метод подсчета среднего балла "float get_average_score()".
main скопируйте из класса ниже.
int main()
{
Human human("Ivan", "Ivanovich", "Ivanov");
vector [int] scores = {1,2,3,4,3,2,1};
Student student("Petr", "Petrovich", "Petrov", scores);
cout << human.get_full_name() << endl;
cout << student.get_full_name() << ": " << student.get_average_score() << endl;
return 0;
}
-
Представьте себя разработчиком компьютерной игры. В вашей игре есть базовые персонажи (Unit), у которых есть показатели hp и силы. А также два метода:
- "int punch()", который возвращает урон от удара кулаком. Урон равен силе юнита.
- "void ask_help()", который выводит на консоль "Help!!!".
И есть персонажи особых классов Войны (Berserk), Лучники (Archer) и Маги (Wizard).
Войны бьют кулаком в 2 раза сильнее своего показателя силы.
Лучники имеют запас стрел, и метод выстрелить, который наносит урон только пока есть стрелы.
Маг имеет запас маны, и может кастовать магию, только пока мана не кончилась. Кроме того, удары кулака от мага всегда наносят 0 урона.
Кроме того, войн, маг и лучник считаются квалифицированными специалистами, поэтому уже не могут просить помощи у других игроков через метод "ask_help()".
Воин, лучник и маг должны наследоваться от класса юнит. У каждого класса должен быть конструктор с аргументами.
В основном коде нужно создать всех основных юнитов и продемонстрировать работоспособность их методов.