Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
METODO DE BISECCION
1
LAMBAYEQUE 2012
PROGRAMACION BASICA
INDICE
INTRODUCCION .......................................................................................... 3 OBJETIVOS .................................................................................................. 4 IMPORTANCIA DEL LENGUAJE C ............................................................. 5 MARCO TERICO ........................................................................................ 6 IV.I. Mtodo de biseccin .............................................................. 6
V.
METODO DE BISECCION EN EL C++ ....................................................... 8 IV.I. IV.II. IV.III. IV.IV. IV.V. Algoritmo del mtodo de biseccin .............................................. 8 Diagrama de flujo ........................................................................ 9 Programa en Microsoft visual studio C++: ............................... 10 Interpretacin del programa en Microsoft visual studio C++ .. 12 Verificando el programa en Microsoft visual studio C++ ........ 13
VI. VII.
METODO DE BISECCION
PROGRAMACION BASICA
I. INTRODUCCIN
Mucha gente parece no entender la importancia del estudio de un lenguaje de programacin; sin embargo saber programar es esencial en cualquier carrera profesional, siendo ahora el mundo de las computadoras, el saber algn tipo de lenguaje de programacin es de suma importancia, ya que facilita la resolucin de muchos problemas. En la actualidad, el C++ uno de los ms usados, lenguaje verstil, potente y general. Su xito entre es un los
programadores profesionales le ha llevado a ocupar el primer puesto como herramienta de desarrollo de aplicaciones. El C++ mantiene las ventajas del C en cuanto a riqueza de operadores y expresiones, flexibilidad, concisin y eficiencia. Adems, ha eliminado algunas de las dificultades y limitaciones del C original.
Es por esto que nosotros como Ingenieros Civiles debemos saber, entender y manejar adecuadamente algn tipo de lenguaje de programacin, para poder as facilitar la resolucin de ya sea de clculos o algn tipo de problemas en general, aprovechando de este modo la tecnologa con la cual se cuenta actualmente
METODO DE BISECCION
PROGRAMACION BASICA
II. OBJETIVOS
GENERAL Crear un programa para resolver ecuaciones con el mtodo de biseccin.
ESPECFICOS Entender la utilizacin de un lenguaje de programacin. Familiarizarse con los lenguajes de programacin y con los comandos. Entender cmo es que funciona una computadora. Poner en prctica lo aprendido en clase.
METODO DE BISECCION
PROGRAMACION BASICA
Es comn leer que se lo caracteriza como un lenguaje de bajo nivel. N o debe confundirse el trmino bajo con poco, ya que el significado del mismo es en realidad profundo, en el sentido que C maneja los elementos bsicos presentes en todas las computadoras: caracteres, nmeros y direcciones.
Esta particularidad, junto con el hecho de no poseer operaciones de entrada-salida, manejo de arreglo de caracteres, de asignacin de memoria, etc , puede al principio parecer un grave defecto; sin embargo el hecho de que estas operaciones se realicen por medio de llamadas a Funciones contenidas en Libreras externas al lenguaje en s, es el que confiere al mismo su alto grado de portabilidad, independizndolo del Hardware sobre el cual corren los programas.
La descripcin del lenguaje se realiza siguiendo las normas del ANSI C, por lo tanto, todo lo expresado ser utilizable con cualquier compilador que se adopte; sin embargo en algunos casos particulares se utilizaron funciones Compilador Sistema Operativo-dependientes, explicitndose en estos casos la singularidad de las mismas.
METODO DE BISECCION
PROGRAMACION BASICA
z tal que
tal
Bsicamente el Teorema del Valor Intermedio nos dice que toda funcin continua en un intervalo cerrado, una vez que alcanz ciertos valores en los extremos del intervalo, entonces debe alcanzar todos los valores intermedios. En particular, si y tienen signos opuestos, entonces un valor
intermedio es precisamente z nos asegura que debe existir por lo menos una raz de
0,
] tal que
] .
f ( x) en el intervalo [
Sea
f ( x) contnua,
i) Encontrar valores iniciales opuestos, es decir, , tales que y . Tienen signos
METODO DE BISECCION
PROGRAMACION BASICA
y por lo tanto ya localizamos la raz. repetir con el nuevo intervalo, hasta que:
METODO DE BISECCION
PROGRAMACION BASICA
3. Realizar las siguientes evaluaciones para determinar en que subintervalo se encuentra la raz:
4. Calculamos la nueva aproximacin ( 5. Calculamos el error | 6. Evaluamos la aproximacin relativa Error < Precisin o t >= Iteraciones Si es verdadero entonces es la Raz | )
METODO DE BISECCION
PROGRAMACION BASICA
Inicio
V.II. DIAGRAMA DE FLUJO
Xi,xf,precisin ,iteracion
f(Xr)=0
No
Si
NO TIENE RAIZ
Si
Xf=xr
F(xi)*f(xf)< 0
No
Xi=xr
Si
Error=(-1)*error
error<0
No
Error<precisi ont>=itera ciones
Xp=xr
METODO DE BISECCION
PROGRAMACION BASICA
FIN
xr
V.I. PROGRAMA EN MICROSOFT VISUAL STUDIO C++: #include <stdafx.h> #include <stdio.h> #include <conio.h> float f (float x) { return ( x*x*x-x-1 ); } int main ( void ) { int t = 0, iteraciones; float Xi, Xf, Xr, Xp = 0.0, error, precision; printf ("Metodo de biseccion\n" ); printf ("Ingrese valor del Intervalo [Xi, Xf]\n"); printf ("Ingrese Valor de Xi: "); scanf ("%f", &Xi); printf ("Ingrese valor de Xf: "); scanf ("%f", &Xf); printf ("Ingrese valor de Precision: "); scanf ("%f", &precision); printf ("Cuantas iteraciones deseas: "); scanf ("%d",&iteraciones); printf ( " NIt Xi for (;;) { t++; Xf Xr Er\n\n" );
METODO DE BISECCION
10
PROGRAMACION BASICA
Xr=(Xi + Xf)/2; printf ( "%3d %6.4f %6.4f %6.4f ", t, Xi, Xf, Xr ); if (f(Xr)==0) break; if ((f(Xi) * f(Xr))<0) Xf = Xr; else Xi= Xr; error=(Xr-Xp)/Xr*100; printf("%6.4f\n",error); if (error<0) error=(-1)*error; if (error<precision||t>=iteraciones) break; Xp=Xr; } printf("La raiz es: %f",Xr);
METODO DE BISECCION
11
PROGRAMACION BASICA
METODO DE BISECCION
12
PROGRAMACION BASICA
Librera s
Declaramos la funcin como punto flotante (float). Funcin Para aplicar el Mtodo de Biseccin / colocamos la funcin en la cual se desea encontrar sus races o soluciones. Por ejemplo: 3 Declaramos las variables tanto enteras (int) como punto flotante (float).
Usamos la Sentencia for para que el bucle para cuando el valor de t = # de iteraciones o; t aumenta en 1 unidad en cada vuelta del bucle
Usamos la sentencia if para verificar si f(xr) = 0, de ser verdadero cortamos el bucle con el comando break Usamos la sentencia if para realizar el paso N 3 del algoritmo
Usamos la sentencia if para verificar el error con la precisin y utilizando el comando break para detener el bucle.
VISUAL
METODO DE BISECCION
13
PROGRAMACION BASICA
Resultados. Observamos que hemos solicitado 15 iteraciones pero el programa nos arroja 11 esto se debe a que el error es menor que la precisin. if (error<precision||t>=iteraciones) break;
METODO DE BISECCION
14
PROGRAMACION BASICA
METODO DE BISECCION
15
PROGRAMACION BASICA
| [ ]
|=9.0909 0.01
|=4.3478 0.01
]
3
|=
0.01
|=
0.01
|=
0.01
METODO DE BISECCION
16
PROGRAMACION BASICA
|=
0.01
|=
0.01
|=
0.01
|=
0.01
3 3 3 3
|=
0.01
3 3
|=
0.01
METODO DE BISECCION
17
PROGRAMACION BASICA
VII. BIBLIOGRAFIA
FUNDAMENTOS DE PROGRAMACIN EN C++. Antonio Garrido. INTRODUCCIN A LA PROGRAMACIN: TEORA Y PRCTICA. Jess J. Rodrguez Sala. PROGRAMACIN EN C++ PARA INGENIEROS. Fatos Xhafa, Pere-Pau Vzquez Alcocer, Jordi Marco Gmez, ngela Martn Prat, Xavier Molinero Albareda LENGUAJES DE PROGRAMACIN: PRINCIPIOS Y PRCTICA. Kenneth C. Louden
METODO DE BISECCION
18