Cálculo de raiz quadrada
Publicado por Elgio Schlemer 07/03/2009
[ Hits: 17.566 ]
Homepage: https://elgio.prof.nom.br/~elgio
Como calcular raiz quadrada em bash? Algumas linguagens tem o sqrt, mas o bash como poderia ser.
#!/bin/bash # Comentarios: muitas linguagens tem o operador de raiz quadrada ou uma funcao # implementada que a realiza. Normalmente esta funcao recebe o nome de sqrt # pyton e pearl tem este operador # Em linux pode-se usar as calculadoras dc para ter o mesmo efeito: # # echo "144 v p"|dc # # mas digamos que isto nao tem graca, pois se usou um comando externo, o dc, # que foi feito em C. Legal mesmo eh o calculo em bash puro # Para isto teria-se que usar a calculadora interna do bash, invocada por # $(( ... )) # # a funcao matematica que se segue eh muito usada e pode ser refinada. Quanto # mais passos, mas se aproxima-se do valor # # Para usar, chame ./raiz.sh N # onde N eh o numero da raiz quadrada (podem passar varios valores, como # ./raiz 144 445 56 67 # MAX=50 # Numero maximo de iteracoes que se faz. for N in $* do I=0 R=$(( $N / 2)) while (( $I < $MAX )) do I=$(( $I + 1)) ANT=$R R=$(( ($N/$R + $R) / 2 )) if [ $ANT == $R ] then break fi done echo Raiz quadrada de $N eh $R done # este codigo retorna apenas a parte INTEIRA da raiz quadrada pois a # calculadora do bash nao trabalha com pontos flutuantes. Para ter # casas decimais teria que usar o bc ou dc, e ai perderia a graca
Enviar via FTP todos as pastas / sub-pastas e arquivos, a partir do diretorio de origem inclusive
Mantenha seu relógio ajustado 2.0
Substituir strings em arquivos ascII
Cria relatorio de email enviados e recebidos
Script para modificar Encoding de UTF-8 para ISO-8859-1
Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Primeiras impressões do Debian 13 (21)
systemd-resol... precisa ser reiniciado periodicamente (3)
intervenção politica pode interver no Fedora Linux [RESOLVIDO] (8)
Fedora não reconhece James Donkey 102 Wireless Gaming Mouse (0)