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


#1

что скажите?

var temperature = 20;
var itsRaining = false;

var minutes;

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

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

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

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


#2

Последние 2 строчки можно убрать. При 20 градусах формулы и так дадут 20 минут.

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


#3

спасибо) но так для общей картины что ли лучше)


#4

Мой первый вариант получился такой:

var temperature = 20;
var itsRaining = false;

var minutes;

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

console.log('Длительность прогулки: ' + minutes + ' минут.');

Много кода, за мудрено получилось.


#5

Второй вариант, подсмотрел ваш:

var temperature = 20;
var itsRaining = false;

var minutes;

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

console.log('Длительность прогулки: ' + minutes + ' минут.');

Меньше кода, все просто и логично. Почему сразу в голову не приходят простые решения. :confused: