Показать сообщение отдельно
  #1 (permalink)  
Старый 23.04.2020, 13:27
Интересующийся
Отправить личное сообщение для AlexRow Посмотреть профиль Найти все сообщения от AlexRow
 
Регистрация: 12.04.2020
Сообщений: 19

Не могу найти ошибку в коде
Нужно избавится от логических операторов && и ||, заменив их на более читаемые конструкции if / else. Исходный код:

function getBoolean(a, b, c, d) {
return a && a > b && c > d && a < c || b && b > a && c > a || c > d && d && d < a;
}

Вот что у меня получилось:

function getBoolean(a, b, c, d) {
if(a < b){
if(c > d){
if(a < c){
return true
}
}
}
if(b > a){
if(c > a){
return true
}
}
if (c > d){
if(d < a){
return true
}
}
else{
return false
}
}

Все работает правильно, только input: a = 0, b = 0, c = 54, d = 3 должен возвращать false, а у меня возвращается undefined.
Где ошибка?
Ответить с цитированием