Latest commit
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Среда разработки: Visual Studioo 2015 Исполняемый файл лежит по адресу: \Devoler_test_task\bin\Debug\Devoler_test_task.exe Архитектура файлов: От абстрактного класса Robot наследуются 3 класса: RandomRobot, EnvyRobot, GentlemanRobot. В абстрактном классе Robot реализован метод DoStrategy, который делегирует поведение робота методу, соответственно его текущему режиму (waiting, charging, sleeping). Соответствующие методы абстрактные и реализованы соответственно поведению робота в классах наследниках. Интерфейс: 1) Строка для ввода параметров, означающих стратегию шести роботов. 2) Кнопка "Model", которая запускает процесс моделирования. Возможные ошибки: 1. Ошибка конвертации значений типов (в случае некорректного ввода) 2. Количество типов должно быть равно 6 (в случае перечисления не шести значений типов) 3. Неподдерживаемый тип (в случае ввода неподдерживаемого типа сратегии робота) 3) Кнопка "Stop" останавливает процес моделирования. 4) Поле лога выводит лог каждого шага в процессе моделирования и полный лог в конце моделирования. Сначала выводятся роботы и их значения HP, потом итемы и их обладатели. 5) Флаг "Исспользовать своевременную графику и лог". При включеном флажке отображает прогрессбары заряда роботов и обновляет лог в процессе моделирования. 6) Флаг "Исспользовать реальное время". При включенном флажке процесс моделирования соответствует заданным значениям условия задания: например, роботы разряжаются на 10% каждую реальную секунду. 7) Прогрессбары отображаются только при включенном флажке "Исспользовать своевременную графику и лог" и своим значением показывают состояние заряда роботов. Обводка Прогрессбара соответствует следующим роботам: 1. RandomRobot - Green 2. EnvyRobot - Red 3. GentlemanRobot - Blue