У меня все правильно только он конечно длинный получился)))
var temperature = 30;
var isRaining = false;
var minutes = 0;
if (isRaining || temperature <= 9 || temperature >= 36)
{
minutes = 0
console.log(‘Гулять я не иду’);
}
if (!isRaining && temperature >= 10 && temperature < 15)
{
minutes = 30;
console.log (‘Прогулка длится ’ + minutes +(’ минут’));
}
if (!isRaining && temperature >= 15 && temperature < 25)
{
minutes = 40;
console.log(‘Прогулка длится ’ + minutes + ’ минут’);
}
if (!isRaining && temperature >=25 && temperature <= 35)
{
minutes = 20;
console.log (‘Прогулка длится ’ + minutes + ’ минут’);
}
Поскольку количество минут прямо зависит от разницы температуры от 20, а разница может быть и отрицательной (например, если t > 20), то мы берём модуль от разности и отнимаем его от 20, получая количество минут.
Чтобы не вписывать в каждой строке “!isRaining”, можно использовать “else” и получится более компактный вариант:
if (isRaining || temperature < 10 || temperature > 35) {
minutes = 0;
} else {
if (temperature >= 10 && temperature < 15) {
minutes = 30;
}
if (temperature >= 15 && temperature < 25) {
minutes = 40;
}
if (temperature >= 25 && temperature <= 35) {
minutes = 20;
}
var temperature = 25;
var itsRaining = false;
var minutes;
if (itsRaining || temperature <= 0 || temperature > 35) {
minutes = 0;
} else {
minutes = (20 - Math.abs(20 - temperature));
}
Не знаю почему, но у меня вот такой вариант не принимало
if (isRaining || temperature < 10 || 35 < temperature ) {
minutes = 0;
}
if (!isRaining && 10 <= temperature < 15) {
minutes = 30;
}
if (!isRaining && 15 <= temperature < 25) {
minutes = 40;
}
if (!isRaining && 25 <= temperature <= 35) {
minutes = 20;
}
Однако, вот такой код оказался валидным. В чём разница? Условия ведь одни и те же
if (isRaining || temperature < 10 || 35 < temperature ) {
minutes = 0;
}
if (!isRaining && temperature >=10 && temperature < 15) {
minutes = 30;
}
if (!isRaining && temperature >= 15 && temperature < 25) {
minutes = 40;
}
if (!isRaining && temperature >= 25 && temperature <= 35) {
minutes = 20;
}
p.s. if else нельзя использовать, потому что их ещё не давали в теме?