Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ESTRUCTURAS DE CONTROL
CICLO WHILE Y SECANTE
7.1 OBJETIVOS
7.2.1 Introducción
Como se explicó con anterioridad MATLAB posee un lenguaje de programación que
como cualquier otro lenguaje dispone de sentencias para realizar bifurcaciones y bucles.
Las bifurcaciones permiten realizar una u otra operación según se cumpla o no una
determinada condición. Las bifurcaciones pueden conducir a otras bifurcaciones y
crearse así anidaciones de estructuras condicionales, situación que ya se presentó en el
capítulo VI con el ciclo FOR. Los bucles permiten realizar las mismas operaciones de
manera repetida sobre datos distintos.
La estructura del bucle while es algo similar a la del bucle FOR. Su sintaxis es la
siguiente.
while condición
sentencias
end
donde; “condición” puede ser una expresión vectorial o matricial. Las “sentencias” se
siguen ejecutando mientras haya elementos distintos de cero en condición, es decir,
mientras haya algún o algunos elementos true. El bucle se termina cuando todos los
elementos de condición son false (es decir, cero).
Estructura While
1. Elabore un archivo m que resuelva lo siguiente: (Nombre: Dprac7_1_ccd)
Nota: ccd, es la clave que tienes asignada en el centro de cómputo docente.
APLICACIONES:
MÉTODO SECANTE. Este método calcula la raíza aproximada de una función. Lo que
hace básicamente es ir tirando rectas secantes a la curva de la ecuación que se tiene
originalmente, y va chequeando la intersección de esas rectas con el eje de las “x” para
ver si es la raíz que se busca. Casi nunca falla ya que solo requiere de 2 puntos al
principio, y después el mismo método se va retroalimentando.
Para comenzar, se piden 2 valores iniciales de “x” y a partir de éstos x0 y x1, se
calculará un tercer valor x2 con la ecuación de la secante y así sucesivamente. El
algoritmo deberá parar cuando |xn+1 – xn| sea menor que la precisión requerida.
x f(x)
x0 0 1 f(x0)
𝒙𝟏 − 𝒙𝟎
𝒙𝟐 = 𝒙𝟎 + 𝒇𝟎 ∗ x1 1 -3 f(x1)
𝒇𝟎 − 𝒇𝟏 x2 0.25 -0.060792885 f(x2)
0.234487427 0.004051533
0.235456666 -3.99906E-06
PASOS A SEGUIR:
1) Después de clc y clear, el programa,..
2) Pide los valores x0 y x1 por medio de input
3) Solicita un error (variable de valor muy pequeño necesaria para comparar e
indicar cuándo se sale de la estructura while. Dado que se detendrá el programa
cuando se aproxime a la raíz (cero).
4) Calcula los valores f(0) y f(1)
Se puede hacer para una sola ecuación o pidiendo la entrada de la ecuación con
la función inline( ) lo cual vendría antes del cálculo de f(0) y f(1)
5) imprimir los primeros valores de x y f( ); usar fprintf( )
6) fijar un valor grande de f2 cualquiera
7) empezar el cálculo de x2 y f(x2) por medio de la estructura while. Este
terminará cuando el valor de f(x) sea mayor que el valor del error. Imprimir en
cada iteración los valores obtenidos.
7.4. POST-LABORATORIO
Elabore un programa que pida introducir números desde el teclado y los vaya
sumando internamente, el programa debe finalizar cuando se introduzca un cero. Y
mostrar el total de la suma.
𝑥 2 (1 − 𝑐𝑜𝑠(𝑥)𝑐𝑜𝑠ℎ(𝑥)) − 𝛾𝑠𝑒𝑛(𝑥)𝑠𝑒𝑛ℎ(𝑥) = 0