Calcular raízes de equações de segundo grau
Publicado por Raphael Henrique (última atualização em 02/07/2014)
[ Hits: 7.350 ]
Download EquacaoSegundoGrau.sh
Sou novo aqui, esse é meu primeiro script mais complexo. Simplesmente calcula as raízes de uma equação de segundo grau desmembrando e utilizando a fórmula de Bhaskara. Críticas são bem-vindas. :)
#!/bin/bash # #Script: Calcular raízes de equação de segundo grau # echo echo -n "Valor de a: " read a echo -n "Valor de b: " read b echo -n "Valor de c: " read c # verificar se todos os parâmetros estão preenchidos if [ -z $a ] || [ -z $b ] || [ -z $c ]; then echo echo "===========================" echo " ERRO: Faltando parâmetros" echo "===========================" echo exit # verificar se a = 0 elif [ $a -eq 0 ]; then echo echo "===========================" echo " ERRO: Impossível calcular" echo "===========================" echo exit fi delta=`bc << EOF scale=3 a=($b * $b) # b^2 b=(4 * $a * $c) # 4ac a - b #b^2 - 4ac EOF ` echo echo "Delta = $delta" # verificar se delta < 0 if [ $delta -lt 0 ]; then echo echo "========================" echo " Não possui raízes reais" echo "========================" echo exit fi x1=`bc << EOF scale=3 n=(((-1)*$b)+sqrt($delta)) # -b+raiz(delta)/2a n/(2*$a) EOF ` # se delta = 0, então só há uma raiz real if [ $delta -eq 0 ]; then echo echo "===================" echo " x = $x1" echo "===================" echo exit fi x2=`bc << EOF scale=3 n=(((-1)*$b)-sqrt($delta)) # -b+raiz(delta) n/(2*$a) # dividir por 2a EOF ` echo echo "===================" echo " x1 = $x1" echo " x2 = $x2" echo "===================" echo exit
Melhorando a performance do sistema...
Instalação do plugin java jre-1_5_0_01 linux-i586
Remover linhas duplicadas em arquivos
Arquivo que instala o Lazarus 1.0
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta