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

Дополнительно
Можно выполнить два или даже все задания, чтобы продемонстрировать ваши навыки и умения более широко.

Награда
При условии успешного выполнения мы пригласим вас на собеседование с дальнейшим трудоустройством на должность программист-стажер.

Задание 1: Стандартный калькулятор
Ввод при помощи мыши или с клавиатуры.
Опционально: вычисления с учетом приоритетов операций.
Опционально: поддержка скобок.
Опционально: отображение истории вычислений.
Задание 2: Геокодер
Преобразование адреса в точку на карте с использованием любого доступного сервиса (Яндекс/Google/2ГИС или др.). На странице имеется форма для ввода адреса и кнопка выполнения запроса. Результатом является карта со значком в точке, соответствующей введенному адресу (либо ссылка на такую карту).
Опционально: история запросов, из которой можно выбрать строку, отредактировать и геокодировать еще раз.


Задание 3: Кластеризация пространственных данных
На вход подается растр (в формате jpg) и список точек (в координатах растра). Необходимо «близкие» точки объединить в кластеры и каждый кластер отобразить на растре одним значком.
Опционально: возможность задания степени «близости».
Опционально: отображение количества исходных точек, попавших в каждый из кластеров.
Задание 4: Операции с полигонами
Реализовать стандартные теоретико-множественные операции над полигонами: объединение, пересечение, разность.
Варианты:
- Консольное приложение. Ввод данных из текстового файла, вывод результата в текстовый файл.
- Полигоны задаются в окне программы с помощью мыши.
- Использовать сторонние библиотеки.
- Реализовать собственный алгоритм.
Опционально: полигоны с многосвязной границей (с дырками).


Задание 5: Векторизатор
На входе – бинарный растр (только белые и черные точки) с объектом черного цвета. На выходе – векторное представление объекта.
Опционально: на растре может быть несколько объектов.
Выполненные задания отправляйте по адресу quest@dataeast.com.
Не забудьте указать в письме свои контакты и немного информации о себе.
Направляя информацию на указанный адрес, вы выражаете согласие на обработку ваших персональных данных ООО «Дата Ист» в соответствии с применимым законодательством, без оговорок и ограничений принимаете условия «Положения о конфиденциальности» и подтверждаете, что, давая такое согласие, действуете свободно, по своей воле и в своих интересах.
