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

Вы можете использовать jQuery, при возможности, для организации пользовательского интерфейса, в любом из следующих заданий, кроме умозрительных.

## assign: evaluation

```javascript
var a = 5;
var b, c;

b = a * 5;
b = c = b/2;
```
Исследуйте код, найдите выражения в нём. Расставьте скобки так, что бы код не изменил своего поведения (работал так же как и сейчас). Объясните как и в каком порядке вычисляются выражения и подвыражения.

## semicolon: error

Сделайте несколько примеров кода, отсутствие `;` в которых приводит к синтаксической ошибке

## semicolon: mistake

Сделайте несколько примеров кода, наличиe или отсутствие `;` в которых приводит к **логической** ошибке (т. е. код выполняется без синтаксических ошибок, но делает не то, что задумано)

## Number: age

С помощью `prompt` спросить у пользователя его возраст и подсчитать год рождения. Год рождения вывести с помощью `alert`.

## Number: temperature

С помощью `prompt` спросить у пользователя температуру в градусах Цельсия и перевести их в Фаренгейты и/или наоборот. 

## Number: divide

Сделайте калькулятор для расчета деления на цело двух чисел. Используйте `Math.floor` или альтернативы.

## String: greeting

Спросите у пользователя имя, и поприветствуйте его с помощью `alert`.

## String: lexics

Спросите у пользователя текст, и проверьте его на наличие некорректного слова или нескольких некорректных слов. Используйте **метод** `indexOf` строки:

```javascript
"123".indexOf("23") //возвращает 1 - позицию подстроки "23" в "123"
"abcdef".indexOf("ef") // 4
"12345".indexOf("some bad word") // -1 - не найдено
```

**Подробнее**:
http://lmgtfy.com/?q=javascript+string+indexOf

## confirm

Поэкспериментируйте с `confirm`, определите тип данных, который он возвращает, и конкретные значения этого типа данных.

## Boolean

Напишите код, который спрашивает те или иные вопросы с ответом "да"/"нет" с помощью `confirm`, и сохраняет ответы в переменных. 

## Boolean: if

Расширьте предыдущее задание условиями по полученным переменным условиями (`if else`). Например, если вы спрашиваете пол пользователя с помощью `confirm`, то по условию сделайте `alert("Вы женщина")` и `alert("Вы мужчина")`

## Array: real

Понаходите в вашей жизни вещи, которые похожи на массивы, и другие вещи, которые можно смоделировать с помощью массивов.

## Array: booleans

Создайте массив с переменными из заданий `Boolean` и `Boolean if`.

## Array: plus

Напишите код, который складывает первые два элемента массива и заносит это в элемент с индексом `2`. Исследуйте полченный массив.

## Array: plus string

Что будет, если в предыдущий примере использовать строки вместо чисел? Сделайте версию для сложения 3х значений. Подумайте, зачем нужна эта возможность в наших примерах.

## Object: real

Найдите те или иные реальные объекты и найдите их свойства. Например у маркера это цвет, толщина, уровень `зарядки` (количество краски), у автомобиля - бренд, модель, мощность двигателя, цвет и так далее. Создайте объекты с помощью 
`{}`. В качестве образца посмотрите объект персоны из материала предыдущего занятия

## Object: change

Поменяйте значения свойств в ваших объектах, используя `[]` и `.` и присвоения.

## Comparison if

Разберите пример 

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

## Comparison: sizes

Сделайте перевод  перевод из нашей системы размеров в американскую или любую на выбор. Используйте
`prompt`, условия сравнения и `alert`.

![таблица](http://www.mirtrik.by/lp/seo-posts/image02.jpg)

## Comparison: object

Подумайте о том, как можно применить объекты к предыдущем заданию.

## Ternary

Спросите у пользователя пол (`confirm`). Выведите с помощью `alert` "Вы мужчина" или "Вы женщина". Сделайте это оператором `alert`. Используйте тернарный оператор.

## Синий пояс Number: flats

Сделайте калькулятор, который позволит вам исходя из информации о количества этажей в доме и количества квартир на этаже находить подъезд и этаж определенной квартиры по её номеру.  Например для 9этажного дома по 4 квартиры
на этаж 81 квартира находится на 5м этаже второго подъезда.

## Черный пояс Number: jq flats

Добавьте в синий пояс ввод и вывод данных через jQuery