Вторая программа "Сколько гулять?"


#1

А как вам такое решение? всего 11 строк

var temperature = 20;
var itsRaining = false;
var minutes;

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


#2

Использование числа 40 в расчетах не делает программу универсальной при других исходных данных.


#3

var temperature = 25;
var itsRaining = false;
var real
var normal = 20
var minutes = 20;
/Если идет дождь/
if(itsRaining){
minutes = 0
}else{
console.log(‘Гулять можно’);
}
/Если нужная температура/
if(temperature < 0 && temperature > 35){
minutes = 0
}else{
console.log(‘Гулять можно’);
}
/Если температура меньше или больше 20 градусов/
if(!itsRaining && temperature <= normal){
minutes = temperature
console.log(‘Гулять можно ’ + minutes + ’ минут’);
}else if (!itsRaining && temperature >= normal && temperature <= normal * 2){
real = temperature - normal;
minutes = minutes - real;
console.log(‘Гулять можно ’ + minutes + ’ минут’);
}else{
minutes = 0
}
Я вот так сделал


#4

var temperature = 15;
var itsRaining = false;
var minutes;

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

Работает 100%


#5

Привет!
Я не очень понимаю, почему никто не выполняет условия задачи? Или они поменялись? На всякий случай привожу и задание и мой код.

/*
Мяу! Длительность прогулки зависит от нескольких условий.
Если идёт дождь, гулять я не хожу. В этом случае длительность прогулки равняется 0. А вот если дождя нет, всё зависит от температуры на улице:
Во-первых, если температура от 10°C (включительно) до 15°C (не включая это значение), я гуляю 30 минут.
Во-вторых, если температура от 15°C (включительно) до 25°C (не включая значение), я гуляю 40 минут.
В-третьих, при температуре от 25°C (включительно) до 35°C (включительно), я гуляю 20 минут.
В остальных случаях я никуда не выхожу: либо очень холодно, либо очень жарко.
Результат программы – время прогулки. Его необходимо записать в переменную minutes.
*/

Я сделала так:
var temperature = 15;
var itsRaining = false;
var minutes;

if (itsRaining || temperature <= 10 || temperature > 35) {
minutes = 0;
console.log(‘Время прогулки ’ + minutes + ’ минут.’);
} else if (!itsRaining && temperature < 15) {
minutes = 30;
console.log(‘Время прогулки ’ + minutes + ’ минут.’);
} else if (!itsRaining && (temperature >= 15 && temperature <25)) {
minutes = 40;
console.log(‘Время прогулки ’ + minutes + ’ минут.’);
} else if (!itsRaining && temperature >= 25) {
minutes = 20;
console.log(‘Время прогулки ’ + minutes + ’ минут.’);
}


#6

Условия задания немного изменились. Здесь есть коды старого варианта, ваш - новый.


#7

Правильный вариант? Спасибо

var temperature = 20;
var isRaining = true;
var minutes = 0;

if (isRaining) {
  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;
}

#8

Мое решение

var temperature = 20;
var isRaining = true;
var minutes = 0;
var cold = temperature < 10;
var hot = temperature > 35;
if(isRaining || cold || hot){
minutes = 0;
}else{
if(temperature >= 10 && temperature < 15){
minutes = 30;
}
if(temperature >= 15 && temperature < 25){
minutes = 40;
}
if(temperature >=25 && temperature <= 35){
minutes = 20;
}
}


#9

может уже было) но вот так…

var temperature;
var isRaining;
var minutes;

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


#10

Насколько адекватно ?
Про Math.abs наглулил во время написания )

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