mjSoftware - бесплатные java программы для мобильных телефонов: mjbook, лабиринт, rss читалка, морской бой через СМС, китайская головоломка с шариками, японские кроссворды, судоку.

Инженерный калькулятор







Описание

Калькулятор для вычислений с плавающей точкой для мобильный телефонов. Основные особенности:

  • Регулируемый размер мантиссы (и, соответсвенно, точности вычислений) - 12, 17, 22 и 25 десятичных цифр.
  • Размер степени (экспоненты) - до 8 десятичных цифр
  • Обратная польская нотация вычислений - не требуется знак =
  • Стековый принцип хранения операндов - не требуются дополнительные операции для занесения промежуточных результатов в ячейки памяти.
  • Автоподстройка (размер цифр и т.д.) под все размеры экранов, поддержка цветных и черно-белых дисплеев
  • Широкие возможности редактирования, отмена последнего действия, ввод числовых констант (число пи)
  • Математические функции: сложение, вычитание, умножение, деление, извлечение целой или дробной части из числа, вычисление квадрата, куба и квадратного корня, тригонометрических функций (синуса, косинуса, тангенса), логарифмы (натуральный и десятичный), возведение в произвольную степень.
  • Ускоренный доступ к меню, доступ к вызову любого пункта любого меню - максимум за 2..3 нажатия кнопок

Принципы работы калькулятора:
  • Все функции, требующие одного операнда, выполняются над текущим операндом (находится в области редактирования). Результат помещается на место текущего операнда.
  • Все функции, требующие два операнда, выполняются над первым операндом в стеке и текущим операндом. Результат помещается на место текущего операнда. Стек сдвигается вниз и первый операнд удаляется из стека.

Пример вычислений

Пример вычислений - допустим, надо вычислить (a - b) / (c - d * e).

  • вводим число a, затем помещаем его в стек (нажимаем *, затем 0)
  • вводим число b, затем выполняем вычитание (нажимаем #, затем 1)
  • помещаем результат в стек (нажимаем *, затем 0)
  • вводим число с, затем помещаем его в стек (нажимаем *, затем 0)
  • вводим число d, затем помещаем его в стек (нажимаем *, затем 0)
  • вводим число e, затем выполняем умножение (нажимаем #, затем 3)
  • выполняем вычитание (нажимаем #, затем 2)
  • выполняем деление (нажимаем #, затем 4)

Управление

  • * edit ввод и редактирование операндов. Редактировать можно только текущий операнд.

    • 1 mantissa установка курсора на поле мантиссы
    • 2 sign (m) смена (инверсия) знака мантиссы
    • 3 exponent установка курсора на поле ввода порядка (экспоненты)
    • 4 sign (e) смена (инверсия) знака порядка (экспонента)
    • 5 clear очистка мантиссы и экспоненты текущего операнда
    • 6 undo восстановление предыдущего состояния калькулятора
    • 7 del удаление последнего знака мантиссы или экспоненты
    • 8 about информация об авторе и программе
    • 0 stack добавление операнда из поля редактирования в стек
    • * dot ввод точки
    • # esc выход из меню в режим редактирования
  • # function выбор действия над операндами.

    • 1 b+a сложение первого операнда в стеке и текущего операнда
    • 2 b-a вычитание текущего операнда из первого операнда в стеке
    • 3 b*a умножение первого операнда в стеке на текущий операнд
    • 4 b/a деление первого операнда в стеке на текущий операнд
    • 5 1/a вычисление обраного значения от текущего операнда
    • 6 integer вычисление целой части от текущего операнда (отбрасывается дробная часть)
    • 7 fraction вычисление дробной части от текущего операнда (отбрасывается целая часть)
    • 8 sin,cos.. переход в меню выбора тригонометрических функций (синус, косинус и т.д.)

      • 1 sin вычисление синуса текущего операнда
      • 2 cos вычисление косинуса текущего операнда
      • 3 tan вычисление тангенса текущего операнда
      • 4 degrees установка градуса в качестве единицы измерения угловых величин
      • 5 radians установка радиана в качестве единицы измерения угловых величин
      • 6 pi присвоенеи текущему операнду числа "пи"
      • # esc выход из меню в режим редактирования
    • 9 power переход в меню выбора степенных функций (квадрат, куб, квадратный корень и т.д.)

      • 1 a*a вычисление квадрата текущего операнда
      • 2 a*a*a вычисление куба текущего операнда
      • 3 sqrt(a) вычисление квадратного корня текущего операнда
      • 4 ln(a) вычисление натурального логарифма
      • 5 log(a) вычисление десятичного логарифма
      • 6 pow(a) возведение в произвольную степень
      • # esc выход из меню в режим редактирования
    • # esc выход из меню в режим редактирования



Вопросы, пожелания, замечания пишите на