Весь код должен быть прокомментирован, смысл всех проверок, переменных и циклов должен быть расписан. Вы должны уметь отвечать на задаваемые вопросы по вашему коду и уметь составить блок-схему какой-либо части реализованного алгоритма.
Вам необходимо сделать функцию-калькулятор, которая на входе принимала
бы строку-пример, а на выходе выдавала бы ответ при ее решении.
Например, для строки "2+6/2" результатом возвращалось бы "5". Строку
нужно самостоятельно разбирать по символам, не используя какие-либо
функции автоматического выполнения передаваемого кода или
специализированных библиотек, решающих подобные примеры. Можно
использовать функцию подсчета корня из числа (Math.sqrt).
Первая функция, которую нужно реализовать, может справляться с
примерами, содержащими целые числа от -1000 до 1000 и операции сложения,
вычитания, умножения, деления и скобок.
Вторая функция, которую нужно реализовать, может справляться с
примерами, содержащими все, указанное в первой функции, а так же корень
"sqrt(выражение)" и комплексные числа "5+2*i", где мнимая единица
записывается, как "i". В ответе, соответственно, может быть комплексное
число.