Algorítmo para Calcular Raiz Quadrada
Publicado por Renê de Souza Pinto 27/02/2005
[ Hits: 57.467 ]
Homepage: http://renesp.com.br
Este pequeno programa ilustra um interessante algorítmo desenvolvido pelo matemático François Viète para calcular a raiz quadrada de um número.
O Algorítmo parte do princípio de que a raiz de um número seja a soma de qualquer número que nós podemos chutar mais um erro, que condiz com a diferença entre o chute e o valor real da raiz.
/****************************************** * Programa: Agorítmo para Calcular Raiz Quadrada * Autor...: Renê de Souza Pinto * Data....: 27/02/2005 * * Compilado com: gcc 3.3.4 *******************************************/ #include <stdio.h> float raiz(float x); float absF(float x); int main(void) { float n; printf("\n\nForneça um número que deseja calcular a raiz quadrada: " ); scanf("%f",&n); printf("\n\nA raiz quadrada de %.5f é %.12f\n\n",n,raiz(n)); return(0); } /* Calcula Valor absoluto para tipo float */ float absF(float x) { if(x < 0) return(-1*x); else return(x); } /* Calcula a Raiz Quadrada */ float raiz(float x) { float r = 1.00; /* Chute inicial */ float rp, res; int sair = 0; while(!sair) { res = r + ((x - (r*r)) / (2*r)); /* Checa resultado */ rp = res * res; if( (float)(rp-x) == 0 || absF(rp-x) < 0.0000000000000001 || r == res) { sair = 1; } else { r = res; } } return(res); }
Nenhum comentário foi encontrado.
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Como redefinir o diretório Home? (4)
Problemas com adaptadores wifi no Zorin (1)
Ocomon 6.0.1 - Problemas ao editar configurações estendidas (7)