O comando bc (Basic Calculator) é uma ferramenta poderosa no Linux para realizar cálculos matemáticos com precisão arbitrária. Ele pode ser usado tanto de forma interativa quanto em scripts. Neste artigo, vamos explorar desde os exemplos mais básicos até os mais avançados.
Exemplos Básicos
1. Operações Aritméticas Simples
O bc pode ser usado para realizar operações aritméticas básicas como adição, subtração, multiplicação e divisão.
echo "12 + 5" | bc
# Saída: 17
echo "10 - 3" | bc
# Saída: 7
echo "4 * 7" | bc
# Saída: 28
echo "20 / 4" | bc
# Saída: 5
2. Uso de Variáveis
Você pode armazenar resultados em variáveis para uso posterior.
x=$(echo "12 + 5" | bc)
echo $x
# Saída: 17
3. Operações com Decimais
Para trabalhar com números decimais, você pode definir a escala (número de casas decimais).
echo "scale=2; 5 / 3" | bc
# Saída: 1.66
Exemplos Intermediários
1. Operadores de Incremento e Decremento
O bc suporta operadores de incremento (++var) e decremento (--var).
echo "var=10; ++var" | bc
# Saída: 11
echo "var=10; var++" | bc
# Saída: 10 (incrementa após a operação)
2. Operadores de Comparação
Você pode usar operadores de comparação para verificar condições.
echo "5 > 3" | bc
# Saída: 1 (verdadeiro)
echo "5 < 3" | bc
# Saída: 0 (falso)
3. Funções Matemáticas
O bc inclui várias funções matemáticas, como seno, cosseno e exponenciação.
echo "scale=4; s(1)" | bc -l
# Saída: 0.8415 (seno de 1 radiano)
echo "scale=4; e(1)" | bc -l
# Saída: 2.7182 (exponencial de 1)
Exemplos Avançados
1. Scripts com bc
Você pode criar scripts complexos usando bc para cálculos avançados.
echo "define f(x) { return x^3 + 2*x^2 + x + 1 } ; f(3)" | bc
# Saída: 49
2. Loops e Condicionais
O bc permite o uso de loops e condicionais para cálculos iterativos.
echo "for (i=0; i<5; i++) i^2" | bc
# Saída: 0 1 4 9 16
echo "if (5 > 3) 1 else 0" | bc
# Saída: 1
3. Conversão de Bases
Você pode converter números entre diferentes bases, como decimal para hexadecimal.
echo "obase=16; 255" | bc
# Saída: FF
echo "ibase=16; FF" | bc
# Saída: 255
Conclusão
O comando bc é uma ferramenta versátil e poderosa para cálculos matemáticos no Linux. Desde operações básicas até scripts complexos, ele oferece uma ampla gama de funcionalidades que podem ser extremamente úteis para desenvolvedores e administradores de sistemas. Experimente os exemplos acima e explore ainda mais as capacidades do bc!