BC: A sua calculadora programável no Linux
Você já pensou em automatizar operações de cálculo? Em fazer um script onde você possa definir funções, constantes e outros? O bc pode ser a solução. Nesse tutorial, veremos como escrever programas simples com ele.
Parte 2: Conhecendo o bc (modo interativo)
Para chamar o bc, basta digitar numa janela de terminal, 'bc'.
Para fazer um cálculo, basta digitar a expressão e dar ENTER.
Operações definidas:
$ bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
300*500
150000
last + 500
150500
last - 1600
148900
last / 20
7445
last^4
3072265955400625
sqrt(last)
55428025
2/3
0
quit
Você pode estar pensando, depois desse último resultado (2/3 = 0?), "Epa! Alguma coisa está errada!".
Calma, não se desespere. Você precisa carregar o bc com o parâmetro '-l', que ativa uma biblioteca de operações matemáticas.
$ bc -l
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
2/3
.66666666666666666666
3/5
.60000000000000000000
33/4589259837593
.00000000000719070202
3125886/2592375832
.00120579969980216973
Agora, como podemos ver, temos o resultado em decimais. Porém, o cálculo com decimais é impreciso depois de algumas casas.
Pequena curiosidade: o comando 'quit' é executado assim que ele é encontrado. Portanto, algo como:
if (0==1) quit
mesmo 0==1 sendo impossível, vai fazer o 'bc' sair.
Tome cuidado com isso.
Operações definidas:
- Adição, subtração, multiplicação, divisão.
- % (resto da divisão)
- ^ (potenciação)
- sqrt(x) (raiz quadrada de x)
- last (último resultado)
$ bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
300*500
150000
last + 500
150500
last - 1600
148900
last / 20
7445
last^4
3072265955400625
sqrt(last)
55428025
2/3
0
quit
Você pode estar pensando, depois desse último resultado (2/3 = 0?), "Epa! Alguma coisa está errada!".
Calma, não se desespere. Você precisa carregar o bc com o parâmetro '-l', que ativa uma biblioteca de operações matemáticas.
$ bc -l
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
2/3
.66666666666666666666
3/5
.60000000000000000000
33/4589259837593
.00000000000719070202
3125886/2592375832
.00120579969980216973
Agora, como podemos ver, temos o resultado em decimais. Porém, o cálculo com decimais é impreciso depois de algumas casas.
Pequena curiosidade: o comando 'quit' é executado assim que ele é encontrado. Portanto, algo como:
if (0==1) quit
mesmo 0==1 sendo impossível, vai fazer o 'bc' sair.
Tome cuidado com isso.
Nem imaginava que o bc era isso tudo!
abração, parabens mais uma vez e obrigado pela contribuição!