// blocks
// Ответьте на вопросы в комментариях и сверьтесь с отладчиком. console.log специально не писал
blocks: {
  let a = 10
  {
    let b = 20
    {
      let c = 30
      //a = 10, b = 20, c = 30, d is not defined

      b++
      a *= 10
    }
    {
      let c = 50
      //a = 100, b = 21, c = 50, d is not defined
      b += 500
    }
    {
      const a = 100500
      const d = "value"
      //a = 100500, b = 521, c is not defined, d = "value"
      {
        let a = -50
        b = 1000
        //a = -50, b = 1000, c is not defined, d = "value"
      }
      //a = 100500, b = 1000, c is not defined, d = "value"
    }
    //a = 100, b = 1000, c is not defined, d is not defined
  }
  //a = 100, b is not defined, c is not defined, d is not defined
}

// comparison if
// Разберите пример. Добавьте условие отрицательного возраста в пример выше. Расставьте недостающие
// (но синтаксически необязательные) фигурные скобки. Выкиньте лишнее из текущего кода
comparison_if: {
  let age = +prompt("Сколько вам лет?", "");
  if (age < 0) {
    alert("ты шо там, нормально?");
  } else {
    if (age < 18) {
      alert("школьник");
    } else {
      if (age < 30) {
        alert("молодеж");
      } else {
        if (age < 45) {
          alert("зрелость");
        } else {
          if (age < 60) {
            alert("закат");
          } else {
            if (age > 60) {
              alert("как пенсия?");
            } else {
              alert("то ли киборг, то ли KERNESS");
            }
          }
        }
      }
    }
  }
}

// switch: sizes
// Сделайте задание Comparison: sizes используя switch
switch_sizes: {
  const ukrSystem = +prompt('Which size clothes do you wear?');
  switch (ukrSystem) {
    case 40:
      alert('You wear 6 size in american system');
      break;
    case 42:
      alert('You wear 8 size in american system');
      break;
    case 44:
      alert('You wear 10 size in american system');
      break;
    case 46:
      alert('You wear 12 size in american system');
      break;
    case 48:
      alert('You wear 14 size in american system');
      break;
    case 50:
      alert('You wear 16 size in american system');
      break;
    case 52:
      alert('You wear 18 size in american system');
      break;
    case 54:
      alert('You wear 20 size in american system');
      break;
    default:
      alert('You entered something wrong');
  }
}

// noswitch
// Напишите функцию noSwitch, которая принимает объект со значениями-функциями, ключ для объекта и запускает
// одну из функций из объекта если ключ найден, иначе - запускает default:
noswitch: {
  const noSwitch = (key, cases, defaultKey = 'default') => {
    return key in cases ? cases[key]() : cases[defaultKey]();
    //проверка наличия key в cases
    //если есть - достать значение по ключу. это будет функция. Запустить ее
    //если нет - извлечь из объекта cases значение по ключу, имя которого лежит в переменной defaultKey. Запустить 
    //пущай функция noSWitch возвращает то, что возвращает одна из функций из объекта
  }
  const drink = prompt("Что вы любите пить")
  noSwitch(drink, {
    воду: () => console.log('Самый здоровый выбор!'),
    чай() {
      console.log('Вкусная и полезная штука. Не переусердствуйте с сахаром')
    },
    "пиво": () => console.log('Хорошо летом, да в меру'),
    виски: function () {
      console.log('Да вы, батенька, эстет! Не забудьте лед и сигару')
    },
    default() {
      console.log('шото я не понял')
    }
  })
}

