Как использовать базовый калькулятор GNU (Bc) в Linux для математических вычислений?
Почти все POSIX-совместимые операционные системы по умолчанию поставляются с устаревшей утилитой GNU bc. GNU bc (базовый калькулятор) — это произвольная точность математический язык сценариев.
Bc имеет синтаксис, похожий на язык программирования C. Не только синтаксис, Bc также предоставляет функции, которые вы найдете в любом другом языке программирования.
Например, управляющие операторы с использованием if/else, итеративные операторы с использованием циклов for или while, математические функции, условные операторы и различные типы операторов, такие как арифметические, логические и операторы присваивания.
Базовый калькулятор (bc)
Вы можете использовать утилиту bc для выполнения базовых и сложных математических вычислений в сценариях оболочки с помощью команды echo.
Использовать bc в скрипте оболочки
Интерактивный режим в Bc
Интересно, что базовый калькулятор также предоставляет интерактивную математическую оболочку для выполнения операций. Просто набрав 'bc' в терминале, вы можете войти в интерактивный режим и протестировать все доступные функции и выражения.
Базовый интерактивный режим калькулятора
Расширенные функции Bc с использованием mathlib
Для выполнения сложных математических вычислений с использованием функций синуса, косинуса и логарифма bc предоставляет стандартную математическую библиотеку. Его можно использовать, загрузив его с помощью параметра командной строки –mathlib или -l с bc.
В настоящее время mathlib поддерживает следующие функции:
- s (x) для синуса
- c (x) для косинуса
- a (x) для арктангенса
- l (x) для натурального логарифма
- e(x) для показательной функции повышения e до значения x
- j (n,x) для функции Бесселя целого порядка n от x
- sqrt(x) для квадратного корня
базовые встроенные функции калькулятора
Кроме того, mathlib также поддерживает следующие специальные функции:
- length(x) для количества цифр в x
- read() для чтения числа из стандартного ввода
- масштаб(выражение) для количества цифр после десятичной точки в выражении
- ibase и obase для базы преобразования входных и выходных чисел
- последний (расширение), которое содержит значение последнего напечатанного числа
Создание пользовательских функций Bc
Помимо встроенных функций, базовый калькулятор также позволяет создавать собственные функции в соответствии с вашими потребностями. Чтобы создать пользовательскую функцию, вам нужно начать ее с ключевого слова define, используя следующий синтаксис:
определить имя_функции (параметры) {оператор… оператор возврата; } Определить собственную функцию bc
Преобразование двоичных чисел в десятичные и десятичных в двоичные с использованием Bc
Используя переменные ibase и obase, вы также можете конвертировать двоичные числа в десятичные и наоборот.
Чтобы преобразовать двоичное число в десятичное:
$ echo 'ibase=2;obase=A;11' | до н.э. -л Преобразование двоичного числа в десятичное с помощью базового калькулятора
Чтобы преобразовать десятичное число в двоичное:
$ echo 'ibase=10;obase=2;3' | bc десятичное в двоичное с помощью простого калькулятора
Взять входные данные из файла
Вместо того, чтобы каждый раз вводить выражения, вы также можете поместить все математические выражения в файл и выполнить его с помощью команды bc.
Взять входные данные из файла