Файлы System/bin Android 12. Справочник.


  Все     Команда     Скрипт     Служба     Приложение  

bc
Калькулятор (Basic Calculator)

Тип файла: команда
  Рус  
bc 4.0.1
Copyright (c) 2018-2021 Gavin D. Howard and contributors
Report bugs at: https://git.yzena.com/gavin/bc

This is free software with ABSOLUTELY NO WARRANTY.
usage:  bc [options] [file...]


bc is a command-line, arbitrary-precision calculator with a Turing-complete
language. For details, use `man bc` or see the online documentation at
https://git.yzena.com/gavin/bc/src/tag/4.0.1/manuals/bc/BUILD_TYPE.1.md.

This bc is compatible with both the GNU bc and the POSIX bc spec. See the GNU bc
manual (https://www.gnu.org/software/bc/manual/bc.html) and bc spec
(http://pubs.opengroup.org/onlinepubs/9699919799/utilities/bc.html)
for details.

This bc has three differences to the GNU bc:

  1) Arrays can be passed to the builtin "length" function to get the number of
     elements currently in the array. The following example prints "1":

       a[0] = 0
       length(a[])

  2) The precedence of the boolean "not" operator (!) is equal to that of the
     unary minus (-), or negation, operator. This still allows POSIX-compliant
     scripts to work while somewhat preserving expected behavior (versus C) and
     making parsing easier.
  3) This bc has many more extensions than the GNU bc does. For details, see the
     man page or online documentation.

This bc also implements the dot (.) extension of the BSD bc.

Options:

  • -e expr --expression=expr Run "expr" and quit. If multiple expressions or files (see below) are given, they are all run before executing from stdin.

  • -f file --file=file Run the bc code in "file" and exit. See above as well.

  • -g --global-stacks Turn scale, ibase, and obase into stacks. This makes the value of each be be restored on returning from functions. See the man page or online documentation for more details. Print this usage message and exit.

  • -i --interactive Force interactive mode.

  • -l --mathlib Use predefined math routines: s(expr) = sine of expr in radians c(expr) = cosine of expr in radians a(expr) = arctangent of expr, returning radians l(expr) = natural log of expr e(expr) = raises e to the power of expr j(n, x) = Bessel function of integer order n of x This bc may load more functions with these options. See the manpage or online documentation for details.

  • -P --no-prompt Disable the prompts in interactive mode.

  • -R --no-read-prompt Disable the read prompt in interactive mode.

  • -q --quiet Don't print version and copyright.

  • -s --standard Error if any non-POSIX extensions are used.

  • -w --warn Warn if any non-POSIX extensions are used.

  • -v --version Print version information and copyright and exit.
  • [ ToyBox ] - дубль    

    Комментарии
    https://github.com/gavinhoward/bc

    Это реализация POSIX-калькулятора bc, в котором реализованы расширения GNU bc,
    а также расширение точки (.) для BSD-разновидности bc.

    Этот bc также включает в себя реализацию dc в том же двоичном файле,
    доступном через символическую ссылку, которая реализует все расширения FreeBSD и GNU.
    Если требуется отдельный двоичный файл dc, bc можно скопировать и переименовать в dc.

    Команда (!)опущена, т.к. создает проблемы безопасности и такая функциональность не нужна.
    Этот bc также предоставляет математику bc в виде библиотеки с привязками C, называемой bcl.

    Расширения

    Расширенная математическая библиотека.

    Подсказка командной строки.

    Включение и выключение зажима цифр.
    (Зажим цифр касается того, как обрабатывать «недопустимые» цифры для определенного основания.
    GNU bc использует его, а BSD bc — нет. Мой делает и то, и другое.)

    Генератор псевдослучайных чисел. Это включает в себя возможность установить
    начальное число и получить воспроизводимые потоки случайных чисел.

    Возможность использовать стеки для масштабирования глобальных переменных,
    ibase и obase вместо необходимости их восстановления в каждой функции.

    Возможность не использовать нестандартные ключевые слова.
    Например, abs — это ключевое слово (встроенная функция),
    но если какой-то скрипт фактически определяет функцию с таким именем, можно
    указать не рассматривать его как ключевое слово, что сделает анализ скрипта правильным.

    Возможность включать и выключать печать ведущих нулей для чисел больше -1 и меньше 1.

    Вывод в научной и инженерной нотации.

    Прием входных данных в научной и инженерной нотации.

    Передача строк и массивов во встроенную функцию length().
    В dc команда Y будет делать это для массивов, а команда Z будет делать
    это как для чисел, так и для строк.

    Встроенная функция abs(). Это команда b в dc.

    Встроенные функции is_number() и is_string().
    Они говорят, содержит ли переменная строку или число, для проверки типа во время выполнения.
    Команды u и t в dc.

    Только для bc встроенная функция divmod() для одновременного вычисления частного и остатка.

    Только для bc встроенная функция asciify() для преобразования массива в строку.

    Оператор усечения $. (То же самое в bc и dc.)

    Оператор @ "установить масштаб".
    То же самое в bc и dc.

    Операторы десятичного сдвига. (<< и >> в bc, H и h в dc.)

    Встроенные функции или команды для получения максимального масштаба, ibase и obase.

    Возможность помещать строки в переменные в bc.

    Команда ' в dc для глубины стека выполнения.

    Команда y в dc для глубины стеков регистров.

    Встроенные функции или команды для получения значения определенных переменных среды,
    которые могут повлиять на выполнение.

    Ключевое слово stream для выполнения того же действия, что и команда P в dc.

    Определенный порядок оценки.

    Определенные статусы выхода.

    Все переменные среды, кроме POSIXLY_CORRECT, BC_ENV_ARGS и BC_LINE_LENGTH.

    Возможность для пользователей определять свои собственные значения по умолчанию
    для различных параметров во время сборки.