Как стать автором
Обновить

Комментарии 91

Хорошо бы к операторам автоматически пробелы добавлять чтобы они с цифрами не слипались.
Эх, JS-кишки лезут наружу. Попробуйте назвать переменную constructor :)
Это особенно обидно на фоне того, что можно назвать переменную «if» или «return». То есть классических запретов нет, а специфические — есть.
while тоже не работает :)
Вы изобрели Mathcad:)
Я крут, но не настолько.
Да ладно, уже лучше Mathcad'а работает :)
НЛО прилетело и опубликовало эту надпись здесь
Были вещи и древнее маткада)
Свежий скрин с телефона

Последняя выпущенная версия 6.10 (2004 год), отлично бегает под Win7, ценю за скорость запуска, и минимализм в целом.
Реально круто! Огромное спасибо за инфо. Я уже несколько лет пользуюсь Soulver (программа для Mac OS). Но всегда хотел платформанезависимый аналог этого приложения.
Отличная вещь.
PS: имперская система мер конечно вещь запутанная, но не настолько же:
image
Это просто погрешность плавающей запятой, а вывод честный без украшательтв.
В «железных» калькуляторах это обходится довольно просто — вычисления производятся с большей точностью, чем отображение на экран.
В итоге при выводе последний разряд округляется, и получаем адекватный результат.
В консоли можно включить вычисления с произвольной точностью
math.config({
  number: 'bignumber',
  precision: 64
});

правда пропадает фича с единицами измерения
Хмм… у меня в Edge = 24.000000000000003
дык, floating point в последнем знаке vendor-dependent.
Волшебно!
Ещё добавить какой-нибудь способ делиться листом с расчётами (например, по урлу с хешем) — цены бы ему не было!
Можно сделать довольно просто: упаковывать всё содержимое textarea в base64, например, и подвешивать к урлу — для не очень длинных вычислений пойдёт, потом ещё через какой-нибудь сокращатель ссылок прогонять, чтобы в твит влезало :)
tinyurl.com/napqtzu

Вот набросал в блокноте, дольше возился с гитхабом :)
Теперь и с юникодом работает, если вдруг кому понадобится в калькулятора юникод :)
Форк тут: calcu.github.io
Здорово :)
Не работает же

image
Работает же, смотрите в адресной строке — можете скопировать URL, вставить его в другом браузере, и там откроется тот же самый текст.
В первой версии юникод не «сохранялся» в адресной строке, так как btoa() работает только с ASCII.
Если без юникода, то URL будет короче.

А что юникодные имена переменных выдают ошибку в вычислениях, это претензии к автору оригинальной программы или Math.js, мопед не мой, я только возможность шаринга через URL прикрутил :)
Добавьте в примеры логические операторы, а то первым делом хочется "&&" и "||" попробовать, а они не работают.
Есть «and» и «or», они работают.
Офигенная вещь. Особенно, чтобы показывать небольшие расчеты в команде.
Жаль, в sublime text такого нет, не хотите и туда плагин добавить?
И вспоминая sublime — очень не хватает автодополнения названий переменных
Консоль питона удобнее в качестве калькулятора (только для этого его и юзаю) + поддержка очень больших чисел в нём есть из коробки.
Особенно радует, что такой «умный калькулятор» можно носить в кармане, так как под андроид есть среда исполнения =)
А можно подробнее?
Конечно: qpython.com
Было бы здорово, если бы можно было выделять мышью не только выражение, но и результат, чтобы скопировать в буфер обмена.
Добавил такую возможность.
НЛО прилетело и опубликовало эту надпись здесь
Было бы круто вместо плюсиков-минусиков повсюду сделать возможность выделять числа и увеличивать их значения стрелочками вверх и вниз.
причем я бы сразу предложил делать как в Nuke: там стрелочка меняет цифру _справа_ от курсора. Т.е. можно накрутить себе стрелками хоть тысячные, хоть десятки тысяч.
А ещё лучше — и колесом мыши тоже.
Добавил это
Классная штука, «джва года ждал». Ещё бы многострочные выражения поддерживать (например по Shift-Enter), чтобы матрицы можно было построчно вводить. И прямую сылку на документацию по функциям math.js
нужна фича: поддержка шестнадцатиричных лексем например 0xFС.
А почему результат скопировать нельзя?
Самый главный минус. =(
Теперь можно!
grimalschi.github.io/calque/index.html — вот тут по прежнему нельзя. Или изменения в коде?
Я сделал копирование отдельных значений результатов — их можно выделять.
Вижу, результат в div, который в фоне расположен.
я бы сделал так:
Див + Textarea шириной допустим 400 пикселей, справа серый столбец шириной допустим 200, в который вставляется результат дублируется:
Выглядеть может как калькулятор в Win 10
Скриншот
Ещё можно добавить сокращённую запись: ln(x) = log(x, e) и lg(x) = log(x, 10)
И поддержку конвертации «составных» величин: m/s to km/h
А ещё было бы здорово — календарную арифметику: 2015-08-06 — 2015-08-03 и 18:00 — 204 m
А разве в этой системе можно работать с составными величинами?
Спасибо, это в самом деле очень круто

Хм
image

P.S. какой-то баг хабра о_О. Я отправлял комментарий в корневую ветку комментариев.
Тот же результат для exp(pi*i)
Скроллинг textarea обрабатывается криво.
Исправлено!
Осталось обернуть в MacGap и нарисовать иконку — будет клёвый десктопный калькулятор. Ну и копирование результата сделать…

Ещё ++ и — не работают, к сожалению.
Копирование добавил.
Для мака уже есть numi.io
Конкуренция не повредит. ;)
Если б еще можно было результат скопировать — цены бы не было.
Уже можно.
очень круто!

но

Это намеренно, или баг?
НЛО прилетело и опубликовало эту надпись здесь
отличная вещь)
Идея отличная.
Голосую за стандалон версию (node-webkit?) и vim-навигацию.
Копировать результат к сожалению нельзя из-за перекрытия textarea
Текстовые блоки с результатом можно выделять мышкой.
Удобно делать тройной клик по результату, чтобы он выделился.
Или двойной, зависит от сложности результата.
Поигрался немножко с math.js.

image
fn(x) = x * fn(0) + 1
fn(2) // RangeError: Maximum call stack size exceeded

Увы :)
Очень здорово.
Попользовавшись один раз этим приложением, остаешься его любителем.

Спорное утверждение, я удалил Tydlig и оставил Soulver. Посмотрите ещё Calca, может больше понравится.
Порылся на оф.сайте — там есть тоже проект с удобным интерфейсом «Math Notepad»
Можно ссылки расшаривать, графики строить и т.д…

mathnotepad.com

По моему для студентов самое оно — и бесплатно! И дорабатывать/улучшать самим можно!!!
А тут на хабре постоянно рекламируют wolfram математику (платную), даже в ВУЗ ее закупили (недавно как раз обсуждали habrahabr.ru/company/wolfram/blog/262317)
Я обычно для такого использую эксель, но для яваскриптеров наверное подойдет, хотя у них и так консоль есть. Я чего-то не понимаю.
в консоли нет реактивности. а тут меняешь первую строку — всё пересчитывается
может, тогда консоль должна быть реактивной?
Неожиданные реактивные выполнения команд, которые имеют побочные эффекты (например, удаляют какой-то файл на диске) — это последнее, что вы хотите от своей консоли.
А есть ли аналог Tydlig для Android? Данный сервис хороший, но печатать с телефона всё-таки не так удобно, как с клавиатуры.
Вот, пожалуйста: Duktig
Использует math.js и умеет всё, что умеет math.js. Дополнительно можно писать комментарии (//) и заголовки (# и ##).
Для удобства ввода использовал кнопки из Калькулятора++, т.е. для ввода символа нужно тянуть кнопку вверх, вниз или вбок.
Пользуйтесь на здоровье.
Понравилось, добавлю в закладки)
Уравнения бы ещё.

10 + x = 8 + 4
x = 12
Писал когда то для себя, для того чтобы расписывать небольшие бюдежты — составляющие стоимости. Может кому тоже полезно будет: aroup.com/stringcalculator
В процессе обучения WinJS решил повторить это для Windows Phone 8.1, кому интересно может скачать приложение здесь. Все ссылки указаны на автора топика, большое ему спасибо.
А почему не сделали сразу и под Windows 10?
Спасибо за интерес, на крисмас запланировал переход на VS2015 и подготовлю приложение и для 10-ки.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации