Algorítmo para Calcular Raiz Quadrada
Publicado por Renê de Souza Pinto 27/02/2005
[ Hits: 56.994 ]
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); }
Programa para cálculo de números complexos
Balanceamento de parênteses utilizando Pilha
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Placamae Asus H510M-E Aceita Linux? [RESOLVIDO] (8)
erro ao clonar repo github (3)
Clamav e suas atualizações (25)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (23)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba