Enviado em 10/09/2007 - 11:36h
Tive que fazer isto em openssl usando big numbers (de 512 bits) pois a calculadora do openssl nao tem raiz quadrada.
Exitem muitas formas de calcular a raiz quadrada, esta que fiz a versão em bash é a que considerei mais fácil de implementar. Trata-se de uma APROXIMAÇÃO e, PIOR, no meu caso, apenas da parte inteira, pois a calculadora do bash não aceita frações (e se for usar o bc, bom, ai perde a graça!)
A função vai convergindo e a cada calculo se aproxima da raiz. Sai do laço quando o resultado anterior é igual ao atual ou quando fizer 3000 interações.
Veja, não serve para coisa séria, é apenas para responder a pergunta se daria para fazer em PURO BASH. O ÚNICO comando externo que usei que não é do bash é o echo (pois tem o /bin/echo)
Só para curiosidade :-D
Exitem muitas formas de calcular a raiz quadrada, esta que fiz a versão em bash é a que considerei mais fácil de implementar. Trata-se de uma APROXIMAÇÃO e, PIOR, no meu caso, apenas da parte inteira, pois a calculadora do bash não aceita frações (e se for usar o bc, bom, ai perde a graça!)
A função vai convergindo e a cada calculo se aproxima da raiz. Sai do laço quando o resultado anterior é igual ao atual ou quando fizer 3000 interações.
Veja, não serve para coisa séria, é apenas para responder a pergunta se daria para fazer em PURO BASH. O ÚNICO comando externo que usei que não é do bash é o echo (pois tem o /bin/echo)
Só para curiosidade :-D