Всем привет! Заново начинаю обучаться после долгого застоя. Давно решал задачу и было другое решение.
Сейчас пришло в голову данное решение. Правильно ли решено задание или нет? если нет, то где нужно исправить?
СПАСИБО!
public class Cat {
public int age;
public int weight;
public int strength;
public Cat() {
}
public boolean fight(Cat anotherCat) {
//напишите тут ваш код
if (this.age > anotherCat.age || this.strength > anotherCat.strength || this.weight > anotherCat.weight) {
return true;
//по трем критериям
} else if (this.age > anotherCat.age
|| this.strength < anotherCat.strength || this.weight > anotherCat.weight) {
//возраст и вес
return true;
} else if (this.age > anotherCat.age
|| this.strength > anotherCat.strength || this.weight < anotherCat.weight) {
//возраст и сила
return true;
}
else if (this.age < anotherCat.age
|| this.strength > anotherCat.strength || this.weight > anotherCat.weight) {
//сила и вес
return true;
}
else
return false;
}
public static void main (String[]args){
}
}
Zoman
22 уровень
Правильно ли решена задача?
Обсуждается
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #598481
2 июля 2021, 11:17полезный
Нет, неправильно.
При таком подходе нужно правильно перечислить 3^3=27 комбинаций, а у тебя всего 4, и те с ошибками.
Поэтому чтобы не носить воду в решете, заведи переменную-счетчик (или две), посчитай баллы котов и сравни. Так будет правильно
+1
Zoman
3 июля 2021, 06:31
спасибо
0