+
+
\ No newline at end of file
diff --git a/calc.js b/calc.js
new file mode 100644
index 0000000..6e46123
--- /dev/null
+++ b/calc.js
@@ -0,0 +1,29 @@
+$(document).ready(function() {
+ var expr = '';
+ /* Функция вызывается при нажатии на любую кнопку.
+ На начало работы, в переменной expr хранится
+ выражение, которое было получено в результате
+ предыдущей работы функции.
+ Функция формирует новое значение exp и выводит
+ его, в конце своей работы.
+ */
+ $('.but').click(function() {
+ if (expr === 'Division by zero') // После ошибки деления на ноль, вычисления начнутся заново
+ expr = '';
+ var $cur = $(this).html(); // в $cur хранится то, что было нажато
+ if ($cur === 'c') // если нажат "сброс"
+ expr = '0'
+ else if ($cur in ['0','1','2','3','4','5','6','7','8','9']) // если нажата цифра
+ if (expr == '0')
+ expr = $cur // если на дисплее 0, заменяем его на нажатую цифру
+ else
+ expr += $cur // иначе, просто приписываем нажатую цифру
+ else if ($cur === '=') // если нажат знак равенства
+ expr = eval(expr) // то считаем выражение (если это может сделать eval())
+ else
+ expr = expr + ' ' + $cur + ' '; // если нажат знак операции, то красиво, с отступами, выводим его
+ if (Math.abs(expr) === Infinity) // если в результате вычислений получилась бесконечность, сообщаем об ошибке
+ expr = 'Division by zero';
+ $('.display').html(expr); // выводим новое выражение на дисплей
+ });
+});
\ No newline at end of file