Реализовать метод fight

  • 4
  • Недоступна
Тео Баслим, полковник в отставке, в юности участвовал в боях, и теперь ему стало скучно. Он узнал, что его соседка Светочка Валерьевна завела полтысячи котов, и решил предложить ей устраивать бескровные кошачьи бои (на кровные она бы не пошла). Дело за малым: нам нужно реализовать механизм драки котов в зависимости от их веса, возраста и силы.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (642)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Александр
Уровень 5, Москва
6 сентября, 15:47
Всем привет! Кто может объяснить почему нет запятой в перечислении параметров -"public boolean fight(Cat anotherCat)"? Или подскажите, где почитать....)
Михаил Кладовщик 80lvl
13 сентября, 20:45
Передается один аргумент Cat(это тип переменной) anotherCat(это сама переменная)
Mark T
Уровень 13, Санкт-Петербург, Россия
24 августа, 13:50
короче мне надоело. я 2 часа трачу на задачу, решение которой я в принципе не могу знать. в итоге получаю готовое решение, а там Integer.compare. круто
Валентин
Уровень 9
25 августа, 05:20
Задача решается без Integer.compare просто через if и счетчики
Анастасия
Уровень 17, Москва
31 июля, 11:28
Нужно ставить более точные критерии. В моем понимание, чем старше кот, тем он слабее, значит, проигрывает более молодому в этом показателе.
Мary
Уровень 20
4 июня, 11:48
Если кто-то не может понять, что делать, план такой (как решала я): 1) Две переменные-счетчика для каждого кота, одна из которых будет увеличиваться в зависимости от того, побеждает кот или проигрывает. 2) Используем if следующим образом: 2.1 Если два параметра равны, то счетчики не меняются. 2.2 Если а>b, то счетчик "мощного" кота +1, иначе счетчик другого кота +1. 3) Сравниваем переменные-счетчики - определяем победителя.
Мальков Александр
Уровень 15, Уфа, Россия
17 июля, 11:48
Я делал одну переменную i если выиграл чужак, то i ++; else i --; в конце если i >=0 (0 при ничье) то return false;
Мary
Уровень 20
22 июля, 07:37
к сожалению, не прошла валидацию с таким решением. возможно, я что-то упустила, но когда переписала с 2-мя,то прошла сразу
Maksym QA Automation Engineer
30 мая, 10:02
Валидатор делал какой-то рукожоп, правильное решение без Integer.Compare не принимает: boolean p_weight =(this.weight - anotherCat.weight)>0; boolean p_strength =(this.strength - anotherCat.strength)>0; boolean p_age =(this.age - anotherCat.age)>0; int score = (p_weight?1:0) + (p_strength?1:0) +(p_age?1:0); return score >0; Почему оно пишет: "Убедись, что кот выигрывает бой, если он превосходит противника по двум или трем параметрам."
Анжелика П. Специалист
9 июня, 09:59
Предположим, что в вашей конструкции кот выигрывает только в весе, то он получает только одно очко (а противник 2), но почему-то ваш кот выигрывает даже с одним очком (return score >0;)
Maksym QA Automation Engineer
11 июня, 04:50
Так нулик то нужно поменять на соответствующую плохую единицу... 😎 Ну ведь нельзя полностью решение выкладывать под задачей.... Я ведь сам принцип показал: как обойтись без Integer.Compare 😏
Maks Anisimov
Уровень 7, Санкт-Петербург, Россия
28 мая, 08:37
пришлось ввести переменные для подсчета очков каждому коту. Сделал if-ами сравнение по каждому параметру с начислением очков коту, который сильнее по этому параметру, но выдало ошибку, чтобы проверил поведение при равенстве сил. После этого изменил условие, чтобы очки не начислялись при равенстве переменных. В итоге сравнение очков и вывод по условию true или false. Проверку прошло. не так и громоздко получилось - ввод 2х переменных + четыре if-а
Jean
Уровень 5
14 мая, 20:17
Я не понимаю, как провести битву между котами. кто-то может, пожалуйста, объяснить как это работает? Буду очень благодарна!
Eugeny Antonov
Уровень 7, Санкт-Петербург, Россия
19 мая, 18:54
if(), а в скобках длинное перечисление всех условий с "и" и "или".
Максим Белоусов
Уровень 13, Москва, Россия
11 мая, 11:23
Долго мучался с случаем когда параметры двух котов равны. В итоге каждое сравнение сделал только для не равных параметров путем: if (age != anotherCat.age)
Alexander G.
Уровень 22, Москва, Россия
9 мая, 08:23
Крутая задача!!!
Artem QA Automation Engineer
8 мая, 16:44
Не совсем понял как эта задача оказалась тут да еще и с Medium сложностью. Не помню, что мы изучали Integer.compare. Сначала начал решать через if'ы, но совсем не выходило. Поэтому взял кусок кода из метода fight другой задачи.