Расширения Writer. Мини‑Калькулятор (MiniCalc.oxt)
From Wiki
| Тип
| Расширение |
| Разработчик
| Н. Е. Гарбуз. Инфра-Ресурс |
| Язык программирования
| StarBASIC |
| Модуль
| Writer |
| ОС
| независимо |
| Последняя версия
| 1.0.4 |
| Лицензия
| GNU LGPL v. 3.0 |
| Сайт
| i-rs.ru |
|
|
Описание
«Мини‑Калькулятор» создан для вставки в документ результата, рассчитанного по формуле. Работает без 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.
Кнопка простой - вызов арифметического калькулятора;
Кнопка финансовый - вызов финансового калькулятора;
Кнопка научный - вызов калькулятора для инженерных расчётов;
Кнопка Дисплей… служит для точной настройки шрифта экрана.
Точная настройка шрифтов
Видимые размеры окна «Мини-Калькулятора» и его элементов зависят от установленных в системе шрифтов, разрешения экрана и ряда других причин. При этом пропорциональное отношение текста и соответствующих элементов управления, например, кнопок подстраивается автоматически операционной системой.
Изменение параметров окна настройки шрифтов отражается изменением отображения дисплея «Мини-Калькулятора».
Нажатие кнопки Сохранить или клавиши ↵ 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)) = -3.0000
- -3.000 - 2+(2+3)*3-5^0.3 = 8.3793
«Мини-Калькулятор» [финансовый]
Это интерфейс «Мини-Калькулятора» создан для удобства финансовых расчётов и повторяет логику и функциональность офисных калькуляторов - Рис. 5.
Архитектура, метод ввода
Финансовый «Мини-Калькулятор» построен на простой 4-х регистровой схеме, управляемой конечным автоматом, что позволило реализовать логику работы простого офисного калькулятора, привычного большинству пользователей.
Список регистров:
- X — аккумулятор. Содержание всегда отображается на экране.
- Y — накопитель. Служит для хранения последнего операнда в циклических расчётах.
- M — память. Служит для временного хранения промежуточных результатов вычислений.
- T — налог. Служит для хранения ставки при расчёте налогов.
Значения во всех регистрах хранятся только в течении сессии. Все регистры обновляются после закрытия окна калькулятора или смены режима (Простой-Финансовый-Научный).
Для упрощения понимания приёмов работы с Финансовым «Мини-Калькулятором», далее будут рассмотрены основные элементы и примеры вычислений.
Индикатор состояния
Индикатор состояния находится между кнопкой Дисплей… и кнопками операций с налоговой ставкой. Индикатор состояния отражает:
- Установленную налоговую ставку, измеренную в процентах;
- Знак M* , если регистр памяти отличен от 0.
Если налоговая ставка не установлена и регистр памяти обнулён, индикатор состояния пуст.
Назначение клавиш
Кнопки финансового «Мини-Калькулятора» разбиты для удобства по группам - Таблица 2.
Таблица 2: назначение клавиш и их соответствие с клавиатурой
| Кнопка | Действие | Ввод с клавиатуры |
|---|---|---|
| Управление вводом | ||
| | Очистка регистра/регистров | |
| | Точность счёта в десятичных знаках после запятой | |
| | Окончание ввода, вычисление результата | |
| Поразрядный ввод чисел | ||
| | Ввод цифр | |
| | Ввод серий из 2-х и 3-х нулей | |
| | Разделитель дробной части | |
| -\+ | Смена знака числа | |
| Арифметические операции | ||
| | Операция сложения | |
| | Операция вычитания | |
| | Операция умножение | |
| | Операция деления | |
| | Операция извлечение доли в процентах | |
| | Извлечение квадратного корня | |
| Операции с регистром памяти | ||
| | Очистка регистра памяти | |
| | Извлечение числа из регистра на дисплей | |
| | Прибавление к регистру значения на дисплее | |
| | Вычитание из регистра значения на дисплее | |
| Операции с налоговой ставкой | ||
| | Установка налоговой ставки | |
| | Прибавление налоговой ставки | |
| | Вычитание налоговой ставки | |
Примеры вычислений
Операции в Финансовом «Мини-Калькуляторе» просты, что демонстрирует нижеследующая таблица - Таблица 3.
Таблица 3: Примеры вычислений
| Пример | Клавиши | Экран |
|---|---|---|
| Корректировка ошибочного ввода | ||
| | | |
| | | |
| Вычисления долей (проценты) | ||
| | | |
| | | |
| | | |
| | | |
| Последовательные вычисления | ||
| | | |
| | | |
| | | |
| Степени и корни | ||
| | | |
| | | |
| | | |
| Операции с регистром памяти | ||
| | | |
| Операции с налоговой ставкой | ||
| | | |
| | | |
| | | |
Фискальная запись
Последовательные вычисления на Финансовом «Мини-Калькуляторе» несут риск накопления ошибки в силу опечатки или иного человеческого фактора.
Для проверки вычислений Финансовый «Мини-Калькулятор» предоставляет возможность вести фискальную запись последовательности вычислений.
Для активации этого режима достаточно держать нажатой клавишу Ctrl при нажатии клавиш ↵ Enter , Return , = , % , √ .
Фискальная запись отражает все вычислительные операции последовательно в открытом, активном документе InfraOffice.pro Writer, начиная с текущей позиции курсора. Например:
- √2 = 1.41
- √3 = 1.73
- 1.41 + 1.73 = 3.14
- 5 + 6 = 11.00
- 11.00 * 4 = 44.00
- 5 * 5 = 25.00
- 25.00 * 5 = 125.00
- 125.00 * 5 = 625.00
- 100 / (1 + 18.00 / 100.) = 84.75
- 100 * (1 + 18.00 / 100.) = 118.00
- 500 + 500 * 30 / 100. = 650.00
- 12 / 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, FALSE |
| 1 | | Логическая 1, TRUE |
| A , B , C , D , E , F | | Логические переменные |
| not | | Отрицание |
| and | | Конъюнкция |
| or | | Дизъюнкция |
| xor | | Строгая дизъюнкция |
| ( ) | | Оператор смены приоритета вычислений |
Кнопка = - инициирует расчёт введённой формулы. Для вставки формулы и результата в документ, следует одновременно нажать клавишу Ctrl .
Кнопка C удаляет ошибочно введённые данные с конца по одному символу. Для удаления формулы сразу, нажмите одновременно кнопку Ctrl .
Инженерные расчёты
Перевод в режим инженерных расчётов осуществляется нажатием кнопки на панели состояния Dec - Рис. 9.
Кнопка состояния Hyp служит для ввода гиперболических функций.
Кнопка состояния Inv служит для ввода обратных гиперболических и тригонометрических функций.
Кнопки состояния Rad , Deg определяют режим ввода угловых величин — радианы и градусы, соответственно. Режим ввода угловых величин распространяется только на прямые и обратные тригонометрические функции.
В режиме инженерных расчётов доступны следующие команды - Таблица 6:
Таблица 6: Алгебраические функции
| Команда | Режим | Описание |
|---|---|---|
| 0 - 9 | | Ввод цифр |
| . | | Ввод десятичной точки |
| rnd | | Ввод случайного числа в диапазоне [0..1] |
| ( ) | | Смена приоритета вычислений |
| + | | Сложение |
| - | | Вычитание |
| × | | Умножение |
| / | | Деление |
| ^ | | Возведение в степень |
| \ | | Остаток от целочисленного деления |
| ! | | Факториал |
| exp | | Функция Эйлера - e |
| ln | | Натуральный логарифм |
| lg | | Логарифм по основанию 2 |
| log | | Логарифм по основанию 10 |
| π | | Магическое Пи |
| sin | | Тригонометрический синус |
| cos | | Тригонометрический косинус |
| tan | | Тригонометрический тангенс |
| 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
