Difference between revisions of "RU/extensions/writer/minicalc"
(Промежуточное сохранение) |
(Промежуточное сохранение) |
||
| Line 285: | Line 285: | ||
* Установленную налоговую ставку, измеренную в процентах; | * Установленную налоговую ставку, измеренную в процентах; | ||
| − | * Знак | + | * Знак {{Button|M*}}, если регистр памяти отличен от 0. |
Revision as of 15:10, 1 November 2011
| Тип
|
Расширение |
| Разработчик
|
Н. Е. Гарбуз. Инфра-Ресурс |
| Язык программирования
|
StarBASIC |
| Модуль
|
Writer |
| ОС
|
независимо |
| Последняя версия
|
1.0.4 |
| Лицензия
|
GNU LGPL v. 3.0 |
| Сайт
|
i-rs.ru |
Contents
Описание
«Мини‑Калькулятор» создан для вставки в документ результата, рассчитанного по формуле. Работает без Java в пакете InfraOffice.pro.
«Мини-Калькулятор» может быть использован для арифметических, финансовых и инженерных расчётов, предоставляя пользователю соответствующие интерфейсы и системы ввода данных.
Новое в «Мини‑Калькуляторе» 1.0.4
- Добавлен «научный» калькулятор, позволяющий выполнять три вида вычислений:
- «Логические» - оптимизация логических выражений;
- «Алгебраический» — инженерные расчёты с тригонометрией и логарифмами:
- «Бинарный» — битовые операции с целыми числами.
- Добавлена настройка шрифтов дисплея;
Установка
Установка в первый раз
Установка «Мини-Калькулятора» производится штатными средствами через меню Сервис → Управление расширениями или при помощи утилиты командной строки unopkg:
- установка для одного пользователя:
echo yes | unopkg add -f MiniCalc.oxt
- установка для всех пользователей:
echo yes | unopkg add –-shared -f MiniCalc.oxt
Обновление с версии 0.9.x
При обновлении «Мини-Калькулятора» с версии 0.9.x в пакете InfraOffice.pro 3 возникает ошибка несовместимости кеша параметров расширения. Эта ошибка проявляется в том, что последнее состояние и настройки не восстанавливаются между сессиями.
Для устранения этой ошибки необходимо и достаточно перезагрузить InfraOffice.pro. Для этого надо просто закрыть все окна InfraOffice.pro, включая QuickStart, а затем открыть снова.
Работа с «Мини‑Калькулятором»
Вызов расширения
«Мини-Калькулятор» вызывается из модуля InfraOffice.pro Writer через меню Правка → Мини-Калькулятор или соответствующей кнопкой на главной панели инструментов.
Чтобы закрыть окно «Мини-Калькулятора» нажмите клавишу Esc , или щёлкните мышкой по кнопке X - закрыть окно.
Главное окно
Для арифметических, финансовых и инженерных расчётов «Мини-Калькулятор» предоставляет пользователю соответствующие интерфейсы и системы ввода данных. Переключение между режимами расчётов и и интерфейсов ввода служит блок кнопок в левой части окна под иконкой «Мини-Калькулятора» - Рис. 1.
Кнопка простой - вызов арифметического калькулятора;
Кнопка финансовый - вызов финансового калькулятора;
Кнопка научный - вызов калькулятора для инженерных расчётов;
Кнопка Дисплей… служит для точной настройки шрифта экрана.
Точная настройка шрифтов
Видимые размеры окна «Мини-Калькулятора» и его элементов зависят от установленных в системе шрифтов, разрешения экрана и ряда других причин. При этом пропорциональное отношение текста и соответствующих элементов управления, например, кнопок подстраивается автоматически операционной системой.
Грубая, пропорциональная подстройка отношения текста и размера дисплея производится автоматически при старте «Мини-Калькулятора». Если качество автоматического подбора шрифта неудовлетворительно, пользователь может подстроить этот параметр более точно, нажатием клавиши Дисплей… вызвав соответствующее окно настройки - Рис. 2
Изменение параметров окна настройки шрифтов отражается изменением отображения дисплея «Мини-Калькулятора».
Нажатие кнопки Сохранить или клавиши ↵ Enter / Return приводит к тому, что выставленные параметры будут хранится между сессиями вызова «Мини-Калькулятора».
Нажатие кнопки X (закрыть) на верхней панели окна или клавиши Esc сохраняет пользовательские настройки только до конца сеанса.
Окно «О программе»
Окно о программе содержит информацию о версии приложения и среды исполнения - Рис. 3.
Для вызова этого окна необходимо и достаточно щёлкнуть мышкой по значку «Мини‑Калькулятор» - Рис. 1.
Чтобы закрыть информационное окно «О программе» достаточно щёлкнуть мышкой по значку «Мини‑Калькулятора», или логотипу «Инфра‑Ресурса», или нажать клавишу Esc .
«Мини-Калькулятор» [простой]
Это самый простой интерфейс «Мини-Калькулятора», который наиболее удобен для простейших арифметических расчётов - Рис. 4.
Архитектура, метод ввода
Простой «Мини-Калькулятор» основан на методе разложения формулы в древовидную структуру, сбалансированную по критерию приоритета вычислений.
Метод ввода — классическая арифметическая формула. Длина формулы (число членов) и вложенность скобок ограничены разумной достаточностью и размерами дисплея.
Кнопка C — сброс результата ошибочного ввода.
Выпадающий список ниже — точность расчёта, измеренная в десятичных знаках после запятой. Значение списка F — автоматическая точность.
Ввод данных с клавиатуры
Клавиши клавиатуры, в основном, имеют строгое соответствие с клавишами калькулятора.
Кнопка = реагирует на клавиши ↵ Enter , Returm , = ;
Кнопка C реагирует на клавиши Delete , ← Backspace , C ;
Кнопка C удаляет ошибочно введённые данные с конца по одному символу. Для удаления формулы сразу, нажмите одновременно клавишу Ctrl .
Вставка результата в документ
Для вставки формулы и результата её расчёта в документ служат комбинации клавиш:
Ctrl + ↵ Enter — при вводе с клавиатуры;
Ctrl + Mouse — при щелчке мышкой по клавише = .
Операторы и приоритеты
Операторы в формуле выполняются согласно правилам арифметики слева на права, с учётом приоритетов - Таблица 1.
Операторы с одинаковым приоритетом выполняются последовательно с лева на право:
- 1+2-3 = 3-3 = 0
Если последующий оператор выше по приоритету, то он выполняется первым:
- 1+2*3 = 7
Для изменения приоритета выполнения операторов применяются скобки:
- (1+2)*3 = 9
Таблица 1: Операторы и приоритеты
| Оператор | Действие | Пример | Приоритет |
|---|---|---|---|
| () | Повышение приоритета | 5 | |
| - | Унарный минус | 4 | |
| ^ | Возведение в степень | 3 | |
| × | Умножение | 2 | |
| ÷ | Деление | 2 | |
| \ | Остаток деления | 2 | |
| + | Сложение | 1 | |
| - | Вычитание | 1 |
Вычисление корней
«Мини-Калькулятор» [простой] позволяет выполнять все арифметические действия, включая извлечение корней любой степени.
Для того, чтобы извлечь корень из числа, необходимо и достаточно вспомнить, что извлечение корня, это возведение в степень, обратную единице. Таким образом, извлечение квадратного корня — это возведение в степень ½ или 0.5.
Отсутствие клавиши квадратный корень расширяет возможности «Мини-Калькулятора», позволяя извлекать любые корни из любых чисел:
- 81^(1/4) = 3 27^(1/3) = 3 9^(1/2) = 3
Примеры выше демонстрируют извлечение корней 4-й, 3-й и 2-й степени (гиперкубический, кубический и квадратный). Операция деления единицы на коренную степень вынесена в скобки, т.к. приоритет оператора деления ниже приоритета оператора возведения в степень.
Для сокращения длины формулы можно использовать десятичные дроби вместо обычных:
- 4^.5 = 2 3125^.2 = 5
Последовательные вычисления
Для расчётов длинных формул применяются последовательные вычисления. Последовательные вычисления предполагают разбиение длинной формулы на несколько коротких, которые вычисляются независимо с накоплением результата.
Для перехода к последовательным вычислениям достаточно после расчёта очередной части длинной формулы нажать клавишу любого арифметического оператора. В этом случае результат автоматически записывается в начало новой.
Пример. Вычислите формулу:
- -3+4*2^(3*(-4-2))-2+(2+3)*3-5^0.3
Разбиваем формулу на две части, связанных оператором вычитания:
- -3+4*2^(3*(-4-2)) - 2+(2+3)*3-5^0.3
Вычисляем первую и вторую части последовательно:
- -3+4*2^(3*(-4-2)) = -2.99998474121094 -2.99998474121094-2+(2+3)*3-5^0.3 = 8.3793586620963
«Мини-Калькулятор» [финансовый]
Это интерфейс «Мини-Калькулятора» создан для удобства финансовых расчётов и повторяет логику и функциональность офисных калькуляторов - Рис. 5.
Архитектура, метод ввода
Финансовый «Мини-Калькулятор» построен на простой 4-х регистровой схеме, управляемой конечным автоматом, что позволило реализовать логику работы простого офисного калькулятора, привычного большинству пользователей.
Список регистров:
- X — аккумулятор. Содержание всегда отображается на экране.
- Y — накопитель. Служит для хранения последнего операнда в циклических расчётах.
- M — память. Служит для временного хранения промежуточных результатов вычислений.
- T — налог. Служит для хранения ставки при расчёте налогов.
Значения во всех регистрах хранятся только в течении сессии. Все регистры обновляются после закрытия окна калькулятора или смены режима (Простой-Финансовый-Научный).
Для упрощения понимания приёмов работы с Финансовым «Мини-Калькулятором», далее будут рассмотрены основные элементы и примеры вычислений.
Индикатор состояния
Индикатор состояния находится между кнопкой Дисплей… и кнопками операций с налоговой ставкой. Индикатор состояния отражает:
- Установленную налоговую ставку, измеренную в процентах;
- Знак M* , если регистр памяти отличен от 0.
Если налоговая ставка не установлена и регистр памяти обнулён, индикатор состояния пуст.
Назначение клавиш
Кнопки финансового «Мини-Калькулятора» разбиты для удобства по группам - Таблица 2.
Таблица 2: назначение клавиш и их соответствие с клавиатурой
| Кнопка | Действие | Ввод с клавиатуры |
|---|---|---|
| Управление вводом | ||
| Очистка регистра/регистров | ||
| Точность счёта в десятичных знаках после запятой | ||
| Окончание ввода, вычисление результата | ||
| Поразрядный ввод чисел | ||
| Ввод цифр | ||
| Ввод серий из 2-х и 3-х нулей | ||
| Разделитель дробной части | ||
| [ -\+ ] | Смена знака числа | |
| Арифметические операции | ||
| Операция сложения | ||
| Операция вычитания | ||
| Операция умножение | ||
| Операция деления | ||
| Операция извлечение доли в процентах | ||
| Извлечение квадратного корня | ||
| Операции с регистром памяти | ||
| Очистка регистра памяти | ||
| Извлечение числа из регистра на дисплей | ||
| Прибавление к регистру значения на дисплее | ||
| Вычитание из регистра значения на дисплее | ||
| Операции с налоговой ставкой | ||
| Установка налоговой ставки | ||
| Прибавление налоговой ставки | ||
| Вычитание налоговой ставки | ||
Примеры вычислений
Операции в Финансовом «Мини-Калькуляторе» просты, что демонстрирует нижеследующая таблица - Таблица 3.
Таблица 3: Примеры вычислений
| Пример | Клавиши | Экран |
|---|---|---|
| Корректировка ошибочного ввода | ||
| Вычисления долей (проценты) | ||
| Последовательные вычисления | ||
| Степени и корни | ||
| Операции с регистром памяти | ||
| Операции с налоговой ставкой | ||
Фискальная запись
Последовательные вычисления на Финансовом «Мини-Калькуляторе» несут риск накопления ошибки в силу опечатки или иного человеческого фактора.
Для проверки вычислений Финансовый «Мини-Калькулятор» предоставляет возможность вести фискальную запись последовательности вычислений.
Для активации этого режима достаточно держать нажатой клавишу [ Ctrl ] при нажатии клавиш [ Enter ], [ Return ], [ = ], [ % ], [ √ ].
Фискальная запись отражает все вычислительные операции последовательно в открытом, активном документе Writer, начиная с текущей позиции курсора:
√2 = 1.41√3 = 1.731.41 + 1.73 = 3.145 + 6 = 11.0011.00 * 4 = 44.005 * 5 = 25.0025.00 * 5 = 125.00125.00 * 5 = 625.00100 / (1 + 18.00 / 100.) = 84.75100 * (1 + 18.00 / 100.) = 118.00500 + 500 * 30 / 100. = 650.0012 / 60 * 100. = 20.00
«Мини-Калькулятор» [научный]
Научный «Мини-Калькулятор» создан для пользователей с высшем техническим образованием, которые понимают его функциональность и умеют её применять для решения практических инженерных задач - Рис. 6.
Научный «Мини-Калькулятор» будет полезен:
- в инженерных расчётах;
- в решении логических уравнений;
- в побитовых двоичных операциях.
Архитектура, метод ввода
Научный «Мини-Калькулятор» использует различные схемы ввода/вывода и управления, зависимые от режима работы.
Индикатор состояния
Индикатор состояния Научного «Мини-Калькулятора» выполнен в виде ряда кнопок, расположенных ниже дисплея - Рис. 7.
Режим работы Научного «Мини-Калькулятора» индицируется состоянием кнопок. Другие кнопки на панели калькулятора могут быть в активном или пассивном состоянии в зависимости от режима работы «Мини-Калькулятора» - Таблица 4.
Таблица 4: Индикатор режимов «Мини-Калькулятора» [научный]
| Кнопка/Индикатор | Режим | Комментарий |
|---|---|---|
| Основные режимы работы | ||
| [ Bool ] | Логические вычисления | |
| [ Dec ] | Инженерный расчёты | |
| [ Hex ] | Битовые операции с шестнадцатеричными числами | |
| [ Oct ] | Битовые операции с восьмеричными числами | |
| [ Bin ] | Битовые операции с двоичными числами | |
| Вспомогательные режимы работы [ Dec ] | ||
| [ Inv ] | Ввод обратных гипер/тригонометрическийх функций | |
| [ Hyp ] | Ввод гиперболических функций | |
| [ Rad ] | Ввод угловых мер в радианах | |
| [ Deg ] | Ввод угловых мер в градусах | |
| [ F ] | Точность отображения результата | |
| Вспомогательные режимы работы [ Hex ], [ Oct], [ Bin ] | ||
| [ 8 ] | Размерность слова - 8 бит | |
| [ 16 ] | Размерность слова - 16 бит | |
| [ 32 ] | Размерность слова - 32 бита | |
Логические вычисления
Перевод в режим логических вычислений осуществляется нажатием кнопки на панели состояния [ Bool ] - Рис. 8.
В этом режиме доступны следующие команды:
Таблица 5: Логические функции
| Команда | Значение | Описание |
|---|---|---|
| 0 | Логический 0 | |
| 1 | Логическая 1 | |
| A, B, C, D, E, F | Логические переменные | |
| ~ | Отрицание | |
| & | Конъюнкция | |
| | | Дизъюнкция | |
| # | Строгая дизъюнкция | |
| () | Оператор смены приоритета вычислений |
Кнопка [ = ] - инициирует расчёт введённой формулы. Для вставки формулы и результата в документ, следует одновременно нажать кнопку [ Ctrl ].
Кнопка [ C ] удаляет ошибочно введённые данные с конца по одному символу. Для удаления формулы сразу, нажмите одновременно клавишу [ Ctrl ].
Инженерные расчёты
Перевод в режим инженерных расчётов осуществляется нажатием кнопки на панели состояния [ Dec ] - Рис. 9.
Кнопка состояния [ Hyp ] служит для ввода гиперболических функций.
Кнопка состояния [ Inv ] служит для ввода обратных гиперболических и тригонометрических функций.
Кнопки состояния [ Rad ] [ Deg ] определяют режим ввода угловых величин — радианы и градусы, соответственно. Режим ввода угловых величин распространяется только на прямые и обратные тригонометрические функции.
В режиме инженерных расчётов доступны следующие команды - Таблица 6:
Таблица 6: Алгебраические функции
| Команда | Режим | Описание |
|---|---|---|
| 0-9 | Ввод цифр | |
| [ . ] | Ввод десятичной точки | |
| [ rnd ] | Ввод случайного числа в диапазоне [0..1] | |
| () | Смена приоритета вычислений | |
| [ + ] | Сложение | |
| [ - ] | Вычитание | |
| [ × ] | Умножение | |
| [ / ] | Деление | |
| [ ^ ] | Возведение в степень | |
| [ \ ] | Остаток от целочисленного деления | |
| [ ! ] | Факториал | |
| [ exp ] | Функция Эйлера - e | |
| [ ln ] | Натуральный логарифм | |
| [ lg ] | Логарифм по основанию 2 | |
| [ log ] | Логарифм по основанию 10 | |
| [ π ] | Магическое Пи | |
| [ sin ] | [ Hyp]) | Тригонометрический синус |
| [ cos ] | [ Hyp]) | Тригонометрический косинус |
| [ tan ] | [ Hyp]) | Тригонометрический тангенс |
| [ asin ] | Тригонометрический арксинус | |
| [ acos ] | Тригонометрический арккосинус | |
| [ atan ] | Тригонометрический арктангенс | |
| [ sh ] | Гиперболический синус | |
| [ ch ] | Гиперболический косинус | |
| [ th ] | Гиперболический тангенс | |
| [ ash ] | Гиперболический арксинус | |
| [ ach ] | Гиперболический арккосинус | |
| [ ath ] | Гиперболический арктангенс | |
| [ abs ] | Абсолютное значение | |
| [ frac ] | Дробная часть | |
| [ int ] | Целая часть | |
| [ round ] | Округление до ближайшего целого |
Выпадающий список [ F,0,1,2,3,4 ] задаёт точность расчёта, измеренную в знаках дробной части после десятичной точки.
Кнопка [ = ] - инициирует расчёт введённой формулы. Для вставки формулы и результата в документ, следует одновременно нажать кнопку [ Ctrl ].
Кнопка [ C ] удаляет ошибочно введённые данные с конца по одному символу. Для удаления формулы сразу, нажмите одновременно клавишу [ Ctrl ].
Побитовые операции
Перевод в режим инженерных расчётов осуществляется нажатием кнопки на панели состояния [ Hex ], [ Oct ] или [ Bin ]- Рис. 10.
Кнопки состояния [ Hex ], [ Oct ] и [ Bin ] определяют основание системы вычислений — шестнадцатеричная, восьмеричная и двоичная соответственно.
Кнопки состояния [ 8 ], [ 16 ] и [ 32 ] задают соответствующую размерность регистров в битах.
Двоичный «Мини-Калькулятор» содержит всего 3 регистра — X, Y и Z. Регистр X используется для ввода чисел, регистр Y хранит операнд, регистр Z используется для отображения результата битовых операций. Переполнение разрядов идентифицируется знаком '<' в регистре Z.
X: 1111·1111
Y: 0000·0001
+
Z:<0000·0000
Двоичный «Мини-Калькулятор» допускает последовательные вычисления, когда предыдущий результат используется как операнд в следующей операции. Для перехода в режим последовательных вычислений необходимо и достаточно нажать любую кнопку битовой операции после нажатия кнопки [ = ].
В режиме инженерных расчётов доступны следующие команды - Таблица 7
Таблица 7: Побитовые функции
| Команда | Описание |
|---|---|
| [ 0-9, A-F ] | Поразрядный ввод чисел, зависящий от основания системы |
| [ rnd ] | Ввод случайного числа, зависящий от основания системы |
| [ + ] | Сложение с переполнением разряда |
| [ - ] | Вычитание с переполнением разряда |
| [ × ] | Умножение с переполнением разряда |
| [ / ] | Деление с переполнением разряда |
| [ \ ] | Остаток целочисленного деления |
| [ << ] | Сдвиг влево на один двоичный разряд |
| [ >> ] | Сдвиг вправо на один двоичный разряд |
| [ neg ] | Дополнение: neg A = not A + 1 |
| [ not ] | Побитовое отрицание |
| [ and ] | Побитовая конъюнкция |
| [ or ] | Побитовая дизъюнкция |
| [ xor ] | Побитовая строгая дизъюнкция |
Кнопка [ = ] - инициирует расчёт введённой формулы. Для вставки формулы и результата в документ, следует одновременно нажать кнопку [ Ctrl ].
Кнопка [ C ] - очищает регистры X и Y.
Дистрибутив
Скачать текущую версию «Мини-Калькулятора» можно по следующей ссылке: File:MiniCalc.oxt
InfraOffice.pro 3.1.x
