Calcular raízes de equações de segundo grau
Publicado por Raphael Henrique (última atualização em 02/07/2014)
[ Hits: 7.293 ]
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
Limpar o histórico dos documentos recentes do Ubuntu 11.10
Algoritmo para saber o maior e menor valor
Pós-instalação para Ubuntu 20.04 e Linux Mint 19.03
Informações de processador, memória e dispositivos
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (6)
Liberte-se: Crie um Servidor Proxy na Nuvem para Acessar Conteúdos Bloqueados
Run0 - Elevação de privilégios com systemd
Como instalar ou remover ambientes gráficos facilmente no openSUSE
Alternativa para Habilitar Hibernação no Lubuntu ou Ubuntu
[Resolvido] Navegador bloqueou o perfil
Ubuntu 24.04 e problemas de acesso à rede VPN (2)
Redundancia entre dois Firewalls (10)
Virtual box não inicia maquinas virtuais que estavam funcionando antes... (6)