/calculator_js

Simple iOS like calculator built with html, css and js

Primary LanguageJavaScript

Открыть приложение

image

Задание

Написать калькулятор. Поле для ввода должно быть заблокировано от прямого пользовательского ввода (readonly). Ввод должен осуществляться путём нажатия на кнопки калькулятора (обязательно) или же клавиши клавиатуры (опционально). Числа выводим с точностью до 8 знака после запятой включительно. По 9 знаку округляем и всё ненужное обрезаем. Как именно реализовывать (через отображение всех составляющих операции, через отображение только последнего введённого значения, ещё как-то) - неважно. Главное, чтобы соблюдался обычный флоу любого калькулятора. Ввод числа, выбор операции, ввод ещё одного числа, выбор новой операции или же вывод результата и т.д.

Реализация

За основу работы функционала был взят калькулятор на iOS.

Ввод можно осуществлять как с клавиатуры, так и мышкой.

Из доступных операций:

  • Удалить введенное число или полностью все отчистить если числа в поле ввода нет
  • Поменять знак перед числом
  • Получить процент от числа
  • Поделить, умножить, сложить, вычесть

Операции можно менять, если мы нажали умножить, можно еще раз нажать на другую операцию и она поменяется

Операции можно выполнять последовательно(86+71/21 и т.д.), промежуточный результат выполнения будет показан серым цветом

Когда нажимается кнопка равно, последовательность операций считается завершенной и добавляется в историю, историю можно прокручивать колесом мыши.

Работоспособность протестирована на win/chrome