Calcular raízes de equações de segundo grau
Publicado por Raphael Henrique (última atualização em 02/07/2014)
[ Hits: 7.333 ]
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
Meu script em shell entendo chamadas ao sistema do mesmo
Instalação do ISC DHCP server no Ubuntu e derivados
Backup interativo (exemplo de shell script)
Baixa e instala WinRAR no Linux
Script simples para compactar e descompactar arquivos
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
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[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