Длительность прогулки

var temperature = 20;
var itsRaining = false;

var minutes;

if (itsRaining = true) {
minutes=0;
}
else if (temperature < 0 || temperature > 35) {
minutes = 0;
}
else if (temperature = 20) {
minutes = 20;
}
else if (temperature > 0 || temperature < 20) {
minutes = temperature;
}
else {
minutes = 20 - (temperature - 20);

}

выдает ошибку при значениях меньше 20. Помогите, пожалуйста.

вот тут условие неправильно прописано:

temperature > 0 || temperature < 20

замените на

temperature > 0 && temperature < 20

А также для сравнения нужно использовать равенство, а не присваивание. То есть if (itsRaining == true).

1 лайк

Можно и так: if(!itsRaining)

Не разобрался что это ветка про испытание ХД. Решение "классической "задачи:

Спойлеры
var temperature = 20;
var isRaining = true;
var minutes = 0;

var temperature = 20;
var itsRaining = false;

var minutes = 0;

if ((10 <= temperature && temperature < 15) && !isRaining) {
  minutes = 30;
} else if ((15<= temperature && temperature < 25) && !isRaining){
  minutes = 40;
} else if ((25<= temperature && temperature <= 35) && !isRaining){
  minutes = 20;
}

А тут из испытания:

Спойлеры!
var temperature = 20;
var itsRaining = false;

var minutes = 0;

if (!itsRaining && temperature > 0 && temperature < 35 ) {
minutes = 20 - Math.abs(20-temperature);

};

1 лайк

Рабочий вариант

let temperature = 15;
let itsRaining = false;
let minutes;
let coolTemperature = 20

if (temperature == 20) {
minutes = 20
console.log (minutes)
}

if (itsRaining || temperature < 0 || temperature > 35) {
minutes = 0
console.log(minutes)
}

if (!itsRaining && temperature <20 && temperature>0) {
minutes = (coolTemperature+temperature)-(coolTemperature)
console.log (minutes)
}

if (!itsRaining && temperature > 20 && temperature <35){
minutes = (coolTemperature-temperature)+coolTemperature
console.log (minutes)

Не проходит проверку при 15 и 22 градусах без дождя.

let temperature = 20;
let itsRaining = false;

let minutes;

if (itsRaining = true || temperature < 0 || temperature > 35) {
minutes = 0;
}

else if (temperature == 20) {
minutes = 20;
}

else if (temperature > 20) {
minutes = 20 - (temperature - 20);
}

else if (temperature < 20) {
minutes = 20 - (20 - temperature);
}