Professional Documents
Culture Documents
Newton y Biseccion PDF
Newton y Biseccion PDF
Newton y Biseccion PDF
#include
<iostream>
#include <cmath>
int main() {
int aux = 1;
/*
a = inferior
b = superior
*/
float a = 1;
float b = 2;
float xi_xi = 0;
float ultimo_xi = 0;
printf(
"|-----------------------------------------------------------------------"
"--------------------------------------------\n");
printf(
"| i | a | b | f(a) | f(b) | xi "
" | f(xi) |f(a) * f(xi) | xi-xi_ |\n");
printf(
"|-----------------------------------------------------------------------"
"--------------------------------------------\n");
while (1) {
float fa = ecuacion(a);
float fb = ecuacion(b);
float xi = (a + b) / 2;
float fxi = ecuacion(xi);
float fa_fxi = fa * fxi;
xi_xi = abs(xi - ultimo_xi);
printf(
"|%3d |%12.8f |%12.8f |%12.8f |%12.8f |%12.8f |%12.8f |%12.8f "
"|%12.8f\n",
aux, a, b, fa, fb, xi, fxi, fa_fxi, xi_xi);
auxr++;
if (fa_fxi > 0) {
a = xi;
} else {
b = xi;
}
ultimo_xi = xi;
if (xi_xi == 0) {
break;
}
}
}
METODO DE NEWTON
#include<cmath>
#include <iostream>
int main() {
int aux = 0;
float xi = 0.75;
float xi_xi = 0;
float ultimo_xi = 0;
printf("Método de Newton\n");
printf("Problema: x^3 + 4x^2 -10\n");
printf("Derivado: 2x^2 + 8x\n\n\n");
printf("+----+-------------+-------------+-------------+-------------+-------"
"-----+\n");
printf("+ i | xi | f(xi) | f'(xi) | xi + 1 | "
"xi_xi |\n");
printf("+----+-------------+-------------+-------------+-------------+-------"
"-----+\n");
while (1) {
float fxi = ecuacion(xi);
float _fxi = derivada(xi);
float xi_1 = xi - (fxi / _fxi);
printf("|%3d |%12.8f |%12.8f |%12.8f |%12.8f |%12.8f|\n", iterador, xi, fxi,
_fxi, xi_1, xi_xi);
aux++;
ultimo_xi = xi;
xi = xi_1;
xi_xi = abs(xi - ultimo_xi);
if (xi_xi == 0) {
printf("+----+-------------+-------------+-------------+-------------+---"
"---------+\n");
break;
}
}
}