Видео ролики бесплатно онлайн

Смотреть красивое видео

Официальный сайт rostobrnadzor 24/7/365

Смотреть видео бесплатно

kstep 12.01.2011 21:11

Мой OpenSource проектProCalc — программистский калькулятор для N900 (Maemo 5)

Долго-долго я искал по интернетам программистский калькулятор для своего N900, который мог бы работать со 2/8/16-ичными числами и выполнять над ними побитовые операции. Я нашёл множество простых калькуляторов, сложных калькуляторов, RPN-калькуляторов, графических и символьных калькуляторов. Но ни один из них не мог того, что нужно мне. Тогда я спросил себя: «Программист я, или кто?» И написал свой калькулятор с блек-джеком и девочками.


Итак ProCalc (programmer's calculator). Это программистский RPN-калькулятор. Он умеет следующее:
отображать числа в двоичной, восьмиричной, шестнадцетеричной и даже в десятичной системе счисления =),
причём умеет это делать даже для чисел с плавающей точкой,
отображать числа в «сыром» виде (как беззнаковые 64-битные целые), давая представление, как числа выглядят на машинном уровне,
отображать числа в «научном формате» в виде мантиссы и экспоненты (в том числе в двоичной, восьмеричной и шестнадцетеричной системах счисления),
все основные побитовые операции, том числе И, ИЛИ, исключающее ИЛИ, НЕ, И-НЕ и операции побитового сдвига,
имеет настраиваемую точность представления чисел и выравнивание чисел до нужного числа знаков с добивкой лидирующими нулями,
умело притворяется обычным инфиксным (не-RPN) калькулятором, автоматически сортирую операции и числа в стеке по проиритетам, если совсем не пользоваться кнопками управления стеком,
до кучи умеет работать с комплексными числами и имеет статистические функции.

Выложен в гараже и на гитхабе, анонсирован в охлохе и на форуме маемо. По последней ссылке можно посмотреть скриншоты. Кроме того доступен в extras-devel репах для Maemo 5.

Статус пока альфа, и я беру паузу в его разработке, чтобы вернуться к другому своему проекту — dbuscron-у.

Вводить числа можно в любой системе счисления, настройки в главном меню влияют только на отображения чисел в стеке и результатов в поле ввода. Для указания системы счисления вводимого числа используйте комбинации "Mod+#", где # — число 0, 2, 8, или A для десятичной, двоичной, восьмеричной или шестнадцетеричной системы счисления (десятичная по-умолчанию, кроме того действует эвристика: если в поле ввода ввести хотя бы одно шестнадцетиричное число без явного указания системы счисления, то число будет считаться шестнадцатеричным).

Все экранные кнопки продублированы хардварной клавиатурой.

Все кнопки с числами в верхнем ряду вводят числа. Ctrl переключает Fn, "m" переключает "Mod". "=" — это равно, а backspace — backspace =) Подчёркивание ("_" или "g") переключает знак числа.

Шестнадцетиричные числа вводятся в верхнем регистре (с шифтом) для отличия от арифметических операций. То есть "A" — это "Shift+A" и т.д.

Звёздочка (* или "a"), плюс (+ или "s"), минус (- или "f") и слеш (/ или "v") означают умножение, сложение, вычитание и деление соответственно, бекслеш (\ или "b") — возведение в степень. Хеш (# или "d"), амперсанд (& или "k"), восклицательный знак (! или "l"), буква "z" и доллар ($ или "x") — это побитовые XOR, AND, NOT, OR и AND NOT.

Круглые скобки (или буквы "h" и "j") — push и pop из стека. Enter — "=" ("Выполнить"). Пробел тоже делает push в стек. Буква "c" (латинская) — "C" ("Clear", то есть очистить).

Кроме того "Mod" переключает статистические операции на кнопках стандартной арифметики: "?" (среднеквадратичнок отклонение), "?" (среднее арифметическое/матожидание), "?" (произведение), "g?" (геометрическое среднее) и "?" (сумма). "Fn+C" очищает поле ввода и стек.


Тэги: Maemo maemo5 rpn калькулятор программы
+ 8 -
Похожие Поделиться

hate 13.01.2011 02:50 #
+ 0 -
Не удается установить 'procalc'.
Несовместимый пакет приложений.


о_О
kstep 13.01.2011 03:23 #
+ 0 -
o_O
Сам ставил себе с репов.
Перезалил в гараж тот, что лежит в репах, попробуй сейчас.
hate 13.01.2011 03:34 #
+ -1 -
уже поставил из репов. через apt-get, т.к. дефолтный пакетный менеджер не показывает ибо:

http://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Packaging,_Deploying_and_Distributing#Sections
, а написано Section: math
возможно поэтому и отказывается ставить скачиванием пакета

еще там не написана секция в procalc.desktop и Cartoise засунул его в "Другие".

автоматический режим переворота не работает: при активации через меню мобильник постоянно держит портретный режим

ну и вертикальная кнопка "=" некрасиво
kstep 13.01.2011 14:09 #
+ 0 -
Если честно меня задолбали самоперенворачивающиеся проги, когда они переворачиваются на каждый неосторожный чих, а потом долго и нудно пытаешься вернуть их на место, потряхивая устройство в разных направлениях, а оно сцуко еще и тормозит. Поэтому в своем калькуляторе я сделал проще: если девайс сложен, то портрет, а если клавиатура выдвинута, то ландшафт. Лично мне так наиболее удобно и не заставляет плеваться каждый раз, когда я наклоняю девайс чуть сильнее, чем ему того хочется.
kstep 13.01.2011 16:30 #
+ 0 -
Ни в одном desktop-файле в /usr/share/applications/hildon не нашел упоминание о секции, даже ничего похожего на параметр категоризации приложений. Можно рабочий пример? Спасибо.

А секцию в debian/control исправил на user/utilities, в следующий релиз пойдет.
hate 14.01.2011 00:32 #
+ 0 -
виноват, это Categories
http://wiki.maemo.org/Desktop_file_format
http://standards.freedesktop.org/menu-spec/latest/apa.html
тут правда может еще сыграло то, что пакет с неправильной секцией в control, но я не уверен, а .desktop - это наверняка
kstep 14.01.2011 00:41 #
+ 0 -
Спасибо! Добавлю опцию в desktop-файл.
kstep 14.01.2011 00:35 #
+ 0 -
Релизнул версию 0.2 в репы, обновляйтесь. Добавлен режим автоориентирования Automatic (accel) для управление ориентацией по акселератору для любителей. И секция пакета исправлена.
kstep 14.01.2011 00:38 #
+ 0 -
* упраления
* акселерометру

fixed
kstep 15.01.2011 18:57 #
+ 0 -
Спасибо за все советы!

Выпустил в репы версию 0.3.1. В ней учёл следующие твои замечания:

- кнопку равно немного переместил влево и сделал горизонтальной, так и правда красивее,
- добавил режим переворота по акселерометру,
- добавил Categories в procalc.desktop, так что Catorise теперь его правильно размещает,
- секция в deb-файле теперь user/utilities (впрочем в это уже было в версии 0.2).

Кроме того добавил косплееров-лесб тригонометрических (включаются по "Mod"/"Mod+Fn") и гиперболических ("Fn") функций до кучи, плюс константы пи и е ("Fn"), плюс маркер списка "list" ("Mod+xBn") для ограничения работы статистических функций (они теперь берут только аргументы до этого маркера, так что за ним можно скрыть другие операции и числа).

kstep 15.01.2011 19:00 #
+ 0 -
И ещё довёл таки до ума алгоритм эмуляции инфиксных операций (там слегка видоизменённый алгоритм Дейкстры), а то сначала хотел обойтись одним стеком, но на некоторых примерах оно глючило.
wiz 13.01.2011 08:22 #
+ 0 -
Для меня последнее время калькуляторы заменяет ipython - и нотация адекватная, и "регистров" сколькно хочешь и IO всех мастей.
kstep 13.01.2011 14:19 #
+ 0 -
Это хорошо, но иногда надо просто посчитать пару чисел, а ради этого запускать консоль, открывать клаву и тыкать в мелкие кнопки банально неудобно. Экранная клава для консольных приложений тоже отстой. В конце концов в распоряжении хороший здоровый тачскрин, грех его не зарисовать большими кнопками и потискать потом пальцами.

А в обычной нотации он тоже работает. Попробуй!

Смотреть видео онлайн

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн