Algoritmo do método de Newton
Publicado por Rafael Henrique da Silva Correia 02/05/2008
[ Hits: 31.737 ]
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; }
Lista simplesmente encadeada com busca auto-organizada
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
E a guerra contra bots continua
Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário
Conheça o firewall OpenGFW, uma implementação do (Great Firewall of China).
Instalando o FreeOffice no LMDE 6
Anki: Remover Tags de Estilo HTML de Todas as Cartas
Colocando uma opção de redimensionamento de imagem no menu de contexto do KDE
[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