Você está na página 1de 10

Calculadora BC

Gabriele Fagundes
Igor Carlos
João Daniel
Ramon Santana
Introdução
● O Bash (assim como o sh, ash, csh) não possui suporte nativo
para operações com ponto flutuante, sendo necessário o uso
de comandos externos. Um desses comandos é o bc uma
linguagem para cálculos, permitindo realizar cálculos
matemáticos através do terminal e, assim, automatizar
alguns processos.

● O bc é uma calculadora de "precisão arbitrária" realiza


cálculos até o limite da memória disponível. A "precisão
arbitrária" é um sistema mais lento que os programas que
utilizam uma quantidade fixa de decimais.

● bc = "basic calculator" programadores Lorinda Cherry e


Robert Morris do Bell Labs, 1975 Unix 6, implementação GNU
Philip Nelson. 4
Funcionalidade
● Funções matemáticas para bc

● adição (+) ● raiz quadrada (sqrt)


● subtração (-) ● potência (^) (**)
● multiplicação (*) ● seno (s(x))
● divisão (/) ● cosseno (c(x))
● resto da divisão (%) ● logaritmo natural ln (l(x))
● função exponencial (e(x))
.

6
● O bc pode ser utilizado diretamente no terminal (comando
“bc” ou “bc -l”, que que ativa uma biblioteca de operações
matemáticas) ou em shell script com a seguinte estrutura:
“variavel”=$(echo “expressão” | bc).

● Quando carregamos o bc com a opção “-l”, temos alguns


comandos matemáticos:

● s(x): o seno de x (x em radianos)


● c(x): o cosseno de x (x em radianos)
● a(x): o inverso da tangente de x (retorna radianos).
Se y = tangente de x (tg x), a(y) = x
● l(x): o logaritmo natural de x. (ln x)
● e(x): a função exponencial ( e^x ) (exp x)
7
● O ”scale” redefine a quantidade de dígitos no resultado da
expressão.
"scale" não deve ser confundido com arredondamento, pois a
quantidade de dígitos especificada em "scale" é utiliza nos
cálculos "internos“.

8
● Exemplo de Scale e bc
-l

● Nessa primeira imagem vemos que sem a ● Nessa segunda imagem vemos que com a
biblioteca que o –l importa o resultado de biblioteca que o –l importada ele da o
cosseno da um erro e da divisão de 2/3 da resultado do cosseno e da divisão, e no
0 scale está definindo até quantas casas o
determinado resultado deve ir.

9
● bc -l # entra na calculadora bc e "-l" carrega as
funções matemáticas
● scale=4 # modifica para 4 digitos
● 4*a(1) # calcula o valor de pi ~ 3.1415926535...
● 3.1412 # resultado de pi com 4 decimais, final 2 ao
invés de 6 ou 5
● scale=6 # modifica para 6 digitos
● 4*a(1) # calcula o valor de pi
● 3.141592 # resultado de pi com 6 decimais

10

Você também pode gostar