next up previous


Informática. Prácticas. Febreiro 2002

Escribir un programa que resolva unha ecuación non lineal da forma:

f (x) = $\displaystyle \sum_{{i = 0}}^{n}$aixi = 0 (1)
empregando para esto o método de Newton. Partindo dun punto inicial x0, calcularanse os puntos sucesivos xi empregando a seguinte fórmula:

xi+1 = xi - $\displaystyle {\frac{{f(x_i)}}{{f'(x_i)}}}$ (2)
Esta operación iterativa deberá executarse até que | xi - xi-1| < 0.00001

O programa debe facer o seguinte:

EXEMPLO: dada a ecuación x3 - x2 - x + 1 = 0 ten raíces en x = 1 (dobre) e x = - 1 (simple). Neste caso, n = 3. Probar con x0 = 2 (para calcular a raíz x = 1 e con x0 = - 3 (para calcular a raíz x = - 1).

MELLORA DO PROGRAMA: Almacenar os valores xi, i = 1,... no ficheiro datos.dat, co seguinte formato:

x(i - 1) |  x(i)
-------------------
-2.00000 |  -1.400
-1.40000 |  -1.100
-1.10000 |  -1.009
-1.00870 |  -1.000
-1.00007 |  -1.000
-1.00000 |  -1.000
AVISO: Incluir como comentario nas primeiras liñas do programa o nome completo e o grupo (A, B)


next up previous
© 2006, Dr. Manuel Fernández Delgado, Universidad de Santiago de Compostela, Departamento de Electrónica e Computación