Salve Galera,
Estou trabalhando em uma lista de exercícios em linguagem "C" e empaquei no projeto 3, de um total de 6.
vejam se podem me ajudar?
Projeto 03 - Raiz quadrada por aproximações sucessivas
Escreva um programa que leia um número real N positivo não nulo qualquer
e determine sua raiz quadrada utilizando o método de aproximações
sucessivas de Newton, exemplificado a seguir:
nova raiz = (N/raiz_anterior+raiz_anterior)/2
o programa deverá encerrar as aproximações sucessivas quando atingir
um valor de raiz tal que seu quadrado difira de 0,1 % de N e então
mostrar o resultado na tela com três casas decimais.
Por simplicidade, não é necessário verificar se o número digitado
pelo usuário é válido. Suponha sempre que o número é válido, positivo
e não nulo.
Ex.: 25 e raiz_anterior=1
nova raiz = (25/1 + 1)/2 = 13 (= raiz anterior)
nova raiz = (25/13 + 13)/2 = 7,46 (= raiz anterior)
nova raiz = (25/7,46 + 7,46)/2 = 5,406 (= raiz anterior)
nova raiz = (25/5,406 + 5,405)/2 = 5,0152 (= raiz anterior)
nova raiz = (25/5,0152 + 5,0152)/2 = 5,000 (= raiz anterior)
neste ponto o programa para e mostra o resultado
pois 5,000 x 5,000 difere em menos de 0,1% de 25
Obs.: esse método de cálculo da raiz quadrada é também conhecido
como "Método Babilônico" e também como "Metodo de Heron ou
Hero de Alexandria"
Agradeço qualquer ajuda!