Конференция "Прочее" » Калькулятор моей мечты
 
  • DayGaykin © (03.08.17 14:41) [0]
    Написал простой калькулятор, которым сам буду пользоваться.

    Кнопок в калькуляторе нет, он просто считает выражения и представляет их в двух видах: в десятичном и в пользовательском.

    Синтаксис - JavaScript. Поддерживаются функции объекта Math. Пользователь может сам определить функции.

    В будущем, возможно, прикручу completion, но пока так.

    Скриншот: https://pp.userapi.com/c639229/v639229334/32bfa/HAduAWNBfdY.jpg
    Исполняемый Windows 32 бита: https://yadi.sk/d/Od8jmewN3LgRac
    Исполняемый Linux 64 бита: https://yadi.sk/d/vSVb2-093LgRan
    Исходники (Lazarus, включает оба исполняемых файла): https://yadi.sk/d/VxGa9g6B3LgRTp

    Непосредственно подсчетом занимается библиотека besen: https://github.com/BeRo1985/besen/tree/master/src

    И уже есть известная проблема: утечка памяти, если открывать и сохранять настройки. Дело в том, что besel иногда зависает при освобождении объекта, поэтому я убрал освобождение (пусть лучше память жрет, чем зависает). Прежде чем копаться в причинах, хочу испытать юзабилити на себе.
  • Юрий Зотов © (03.08.17 15:16) [1]
    Старшинство операций учитывается?
  • DayGaykin © (03.08.17 15:24) [2]

    > Юрий Зотов ©   (03.08.17 15:16) [1]
    > Старшинство операций учитывается?

    Конечно:
    1+2*3 = 7
  • Kerk © (03.08.17 15:28) [3]
    А что он умеет чего не умеет гугл?
  • DayGaykin © (03.08.17 15:51) [4]

    > Kerk ©   (03.08.17 15:28) [3]
    > А что он умеет чего не умеет гугл?

    Запускаться без интернета:)

    Ты можешь добавлять свои функции написанные на JS
  • Германн © (04.08.17 02:08) [5]

    > Калькулятор моей мечты
  • manaka © (04.08.17 09:19) [6]

    > А что он умеет чего не умеет гугл?


    а что он умеет, чего не умеет Excel? )))
  • Читатель © (04.08.17 13:01) [7]

    > а что он умеет, чего не умеет Excel? )))

    Лет 5 назад для себя написал калькулятор. Код парсера взял в инете, оболочку написал на MVC6.0++. Пользуюсь до сих пор, ничего сверхъестественного, но удобно. Excel тяжелый, пока он загрузится.. А тут в одном окошке формулу написал, типа 10+ 5552*4.2-111, он сразу посчитает.
    Вроде мелочь и ерунда, но удобство в работе. Так что автора темы поддерживаю. :)
  • Kerk © (04.08.17 13:07) [8]

    > Читатель ©   (04.08.17 13:01) [7]

    В адресную строку браузера пробовал свой пример вставлять? :)
  • Читатель © (04.08.17 13:20) [9]

    > В адресную строку браузера пробовал свой пример вставлять?
    >  :)

    Каждый делает так, как ему удобно. :)

    У меня есть еще бзик иногда открывать Excel, заходить в VBA и там делать расчеты какие-то...
    Debug.Print 1+2+3
  • Inovet © (04.08.17 13:59) [10]
    > [3] Kerk ©   (03.08.17 15:28)
    > А что он умеет чего не умеет гугл?

    > [6] manaka ©   (04.08.17 09:19)
    > а что он умеет, чего не умеет Excel? )))

    Прямо напрашивается продолжение:
    А что он умеет чего не умеет Maple?

    Так что поддерживаю. Сам пользуюсь стандартным Вин7, а в новых версиях Вин калькулятор изуродовали. И Casio FX-991EX, это я год назад его купил.
  • Читатель © (04.08.17 14:23) [11]
    Не знаю, на Win 8.1 калькулятор простенький, конечно на WinXP он более функциональный, но все же одинаково эмулятор обычного кнопочного... В Андроид аналогично. Лично для меня это не савсем удобно.
  • Inovet © (04.08.17 14:47) [12]
    > [11] Читатель ©   (04.08.17 14:23)
    > на Win 8.1 калькулятор простенький, конечно на WinXP он
    > более функциональный

    На Вин7 самый лучший из стандартных. Но Casio - это просто фантастика, ну лет 20 назд, да и даже в нынешнее время я от него в восторге. А уж когда я в школе учился, мне бы такой...
  • Читатель © (04.08.17 16:23) [13]

    > На Вин7 самый лучший из стандартных. Но Casio - это просто
    > фантастика, ну лет 20 назд, да и даже в нынешнее время я
    > от него в восторге. А уж когда я в школе учился, мне бы
    > такой...

    В институте был у меня маленький какой-то миниатюрный. Я не знаю где там были батарейки или "солнечный" он был, но он еще после института работал. Но во время учебы я еще понял, что неудобно протыкивать кнопки, поэтому я для одной курсовой написал программу, которая делает расчеты и выводит на экран мне для записи в курсовую (принтера не было). Тем более что там и синусы были с косинусами, а на это крутой калькулятор нужен, но и с ним с дубу рухнешь все эти формулы считать...
  • ВладОшин © (04.08.17 16:33) [14]
    все равно удобнее в IDE или EMS..

    написал
    select  10+ 5552*4.2-111
    выполнил, добил результатом
    select  10+ 5552*4.2-111--23217.4

    потом копи-паста, поправил немного, запустил, добил результатом
    select  10+ 5552*4.2-112--23218.4

    копи-паста, поправил немного, запустил
    копи-паста, поправил немного, запустил

    - ага, а на втором-третьем шаге было лучше.. Вернулся по списку на второй шаг.

    И тут главное
    Как в калькуляторе это сделать?
  • DayGaykin © (04.08.17 16:48) [15]

    > ВладОшин ©   (04.08.17 16:33) [14]
    >

    Интересно. Сейчас попробую сделать
  • Inovet © (04.08.17 16:59) [16]
    > [14] ВладОшин ©   (04.08.17 16:33)
    > Как в калькуляторе это сделать?

    В сабжевом? В Виндоус и в Casio есть история с редактированием, в Casio ещё и переменные можно использовать, ну и привычная запись мат выражений, как бы на бумаге записывал - дроби, степени, функции, корни и т.д. - всё выглядит естественно, разве что если сильно многоэтажно или длинно - на экране приходится прокручивать. В строчку тоже можно как в сабжевом и в Вин. А история - это очень удобно в калькуляторах, в Вин7 она по умолчанию отключена. И ещё в Вин логика обработки выражений разная для простого бухгалтерского режима и для инженерного.
  • DayGaykin © (04.08.17 17:05) [17]

    > Inovet ©   (04.08.17 16:59) [16]

    У меня переменные тоже можно и даже функции:
    https://pp.userapi.com/c837535/v837535690/4e85e/Tl9CA2z_euk.jpg


    > ВладОшин ©   (04.08.17 16:33) [14]

    Сделал по Ctrl+Enter добавление комментария с результатом. (см скриншот выше)
    Чуть позже попробую на гит залить
  • Kerk © (04.08.17 17:17) [18]
    Я так тоже могу :)
    $ node
    > 2*2
    4
    > a = 1
    1
    > a * 2
    2
    > f = (x) => {return x*2}
    [Function: f]
    > f(45)
    90
    > .exit



    Ладно, не буду портить вечеринку :)
  • DayGaykin © (04.08.17 18:00) [19]

    > Kerk ©   (04.08.17 17:17) [18]

    Так лучше:
    f = (x) => x*2

  • L_G © (04.08.17 19:32) [20]
    ок, и я своим доморощенным калькулятором поделюсь

    сходства с Excel: много строк, формулы, ссылки, буквы A, B, C... (но как названия строк, а не колонок), есть сохранение/открытие файлов

    отличия от Excel: быстрее запускается, названия строк можно менять, колонок только 3, входные числа и формулы - только во 2 колонке и всегда видны, вычисленные значения - в 3 колонке, ссылки только абсолютные, синтаксис формул - объединение си и паскаля

    делал специально под себя, на появление хотя бы второго пользователя не претендую )

    http://my-files.ru/m31m6o
 
Конференция "Прочее" » Калькулятор моей мечты
Есть новые Нет новых   [134430   +1][b:0][p:0.001]