# ДЗ: Операции, Типы, Сравнение, Условия и Логические операторы 2.

## switch: sizes

Сделайте задание [Comparison: sizes](http://gitlab.a-level.com.ua/gitgod/FrontendLectures/src/master/02OperationsTypesComparisonConditionLogicHomeWork.md#comparison-sizes) используя `switch`

## switch: if

Перепишите пример ниже, используя `if`.
```javascript
var color = prompt("Введите цвет","");
switch (color){
    case "red": document.write("<div style='background-color: red;'>красный</div>");
    case "black": document.write("<div style='background-color: black; color: white;'>черный</div>");
                break;
    case "blue": document.write("<div style='background-color: blue;'>синий</div>");
    case "green": document.write("<div style='background-color: green;'>зеленый</div>");
                break;
    default: document.write("<div style='background-color: gray;'>Я не понял</div>");
}
```

## prompt: or

Для задания [Number: age](http://gitlab.a-level.com.ua/gitgod/FrontendLectures/src/master/02OperationsTypesComparisonConditionLogicHomeWork.md#number-age) используя **ИЛИ** `||` вывести сообщение об ошибке (`alert`) 
если пользователь не введет возраст или нажмет отмену (т. е. `prompt` выдаст пустую строку или `null`, интерпретируемую как `false`).

## confirm: or this days
C помощью этого же трюка сделайте капризного робота, который в `confirm` спрашивает "шопинг?", а в случае отказа - выводить `alert` "ты - бяка".

## confirm: if this days
Сделать тоже самое с помощью `if`.

## triple prompt
Трижды вызывать `prompt`, сохранить в переменные фамилию, имя и отчество. Вывести ФИО c помощью `alert`. 

## default: or
Используя **ИЛИ** `||` добавьте имена по умолчанию, которые будут сохраняться во внутренних переменных если пользователь ввел пустую строку или
нажал "Отмена". Например, если вы на шаге ввода Фамилии нажмете `Escape`, фамилия будет "Иванов"

## default: if
Сделайте тоже самое с помощью `if` и `else`

## login and password
Напишите код, который спрашивает логин, проверяет его на верность, в случае если логин верен, просит ввести пароль и проверяет его. В случае
несовпадения логина или пароля выводить `alert` с текстом ошибки. В случае успешного логина - `alert` с поздравлением. Правильные логин:
`admin` и пароль: `qwerty`. Используйте вложенные `if` и `else`.

## currency calc
Калькулятор обмена валют. Первый `prompt` спрашивает валюту: "usd" или "eur". С помощью `switch` установите обменный курс для валюты, выбранной
пользователем, после чего спросите величину и переведите её из гривны в выбранную на первом `prompt` валюту. Выведите результат в alert()

## currency calc: improved
Улучшить предыдущее задание: сделать возможность ввода валюты любыми буквами (`usd`, `uSd`, `USD`), используйте `str.toLowerCase()`.

## currency calc: two rates
Добавить к возможность выбора обменного курса на продажу и покупку. Используйте `confirm` для ввода пользователя и тернарный оператор для величины курса.

## currency calc: if
Сделать тоже самое на `if`

## scissors
Сделайте игру "камень-ножницы-бумага". Пользователь вводит свой вариант через `prompt`, программа генерирует свой вариант через `Math.random()`
и выводит через `alert`. Следующий `alert` выводит имя победителя или "ничья"

## Задание на синий пояс

Сделать задания обмена валют используя ассоциативный массив (объект) подобной структуры. Добавьте дополнительные поля при надобности. Для обращения к нужному
полю используйте `[]`.

```javascript
var ratios = {
    usd: 25.6,
    eur: 29
}
```

## Дополнительное задание

Слепить все задания в один текст, таким образом что бы вначале происходил ввод названия задания, каждое задание при этом 
находится в отдельном `case` оператора `switch`. Например `case "currency calc"` для калькулятора обмена валют.

## Задание на черный пояс

Сделайте игру "камень-ножницы-бумага", как описано выше, пользуясь логическими операциями (`&&`, `||`, `!`), не используя `if` и `switch`. 
Задание должно быть решено одним выражением