Algoritmo do método de Newton
Publicado por Rafael Henrique da Silva Correia 02/05/2008
[ Hits: 31.749 ]
Homepage: http://abraseucodigo.com.br
Script para achar 0 em funções reais!! Em termos computacionais o método de Newton é o mais eficaz para fazer isso, pois é o que usa menos iterações possíveis!
OBS: O código ainda não lê funções digitadas, por isso mude a função Fxnovo e Fdxnovo para as funções que você desejar, lembrando que Fdxnovo é a derivada de Fxnovo e a função colocada no exemplo é a função F(x)=x^3-9*x+3
#include <stdio.h> #include <stdlib.h> float Abs( float x ){ x = ( x * x ) / -(x); return x; }; int main(){ float solucao = 0., xini = 0., xnovo = 0., Fxnovo = 0., Fdxnovo = 0., E = 0.;// Fdxini = derivada de Fxini int k = 0; printf( "Digite o x inicial: " ); scanf( "%f", &xnovo ); printf( "Digite a precisao: " ); scanf( "%f", &E ); do{ xini = xnovo; Fxnovo = ( xini * xini * xini ) - 9. * xini + 3.; //inserir sua função principal aqui Fdxnovo = 3. * ( xini * xini ) - 9.; //inserir a derivada da função principal aqui xnovo = xini - ( Fxnovo / Fdxnovo ); k += 1; printf( "\niteracao = %d", k ); printf( "\nxini = %f\nxnovo = %f", xini, xnovo ); } while( Abs( xnovo - xini ) >= E || Abs( Fxnovo ) >= E ); printf( "\n\nxnovo - xini = %f\n", xnovo - xini); printf( "A solucao final eh: %f\n", xnovo ); return 0; }
Converter Decimal para Binário em C
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
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
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
Microfone do meu headset não é recinhecido. Meu notebook é um Acer Asp... (11)
Impressora Canon Ip 1800 (Drivers) 64 bit (7)