Создать класс волк с полями: имя, возраст, вес, энергия, голод - PascalABC.NET
Формулировка задачи:
Создать класс волк с полями,имя,возраст,вес,энергия,голод.
Волк может охотится, что уменьшает его вес и энергию.
Если он поймал добычу его вес и энергия повышается.
Волк может спать, что повышает его энергию и голод.
Если голод больше какой-либо отметки–волк умирает(присвоить переменной nil).
Решение задачи: «Создать класс волк с полями: имя, возраст, вес, энергия, голод»
textual
Листинг программы
Type Wolf = Class Private n: String; a, w, e, h: Int64; Const hMax = 10; Public Constructor (Name: String; Age, Weight, Energy, Hunger: Int64); Begin n := Name; a := Age; w := Weight; e := Energy; h := Hunger; End; Procedure Hunt; Begin If Random(0, 1) = 1 then Begin Inc(w); Inc(e); End Else Begin Dec(w); Dec(e); End; End; Procedure Sleep; Begin Inc(e); Inc(h); If h = hMax then Begin n := nil; a := 0; w := 0; e := 0; h := 0; End; End; End; Begin End.
Объяснение кода листинга программы
- Объявлен класс
Wolf
(Волк) с приватными полямиn
,a
,w
,e
,h
и константойhMax
. - В публичном разделе класса объявлен конструктор, принимающий параметры
Name
,Age
,Weight
,Energy
,Hunger
и методHunt
. - Конструктор инициализирует поля класса значениями переданных параметров.
- Метод
Hunt
увеличивает вес и энергию волка с вероятностью 1/2, иначе уменьшает их на 1/2. - В приватном разделе класса объявлен метод
Sleep
, который увеличивает энергию и голод волка, а также проверяет, достиг ли волк максимального уровня голода, и если достиг, то сбрасывает все поля волка в ноль. - Код в блоке Begin..End является телом программы и не содержит объектов класса
Wolf
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д