Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ESTRUCTURAS DE CONTROL
Ciclo for – end
Y
Ciclo while – end
6.1 OBJETIVOS
6.2.1 Introducción
Sentencia condicional switch - end.- El condicional switch ejecuta un bloque de condiciones o
selecciones varias, descritas en la parte case de su sintaxis. Al ejecutar la comparación con case
y hallar correspondencia; se ejecutarán una serie de comandos, en el caso de no haber
correspondencia, se tomarán otras alternativas descritas en el mismo condicional.
Bucles.- Los bucles o iteraciones son otro de los métodos utilizados para controlar el flujo de un
programa. En un bucle, la ejecución de uno o varios comandos se repite varias veces
consecutivamente. Cada una de estas repeticiones se denomina paso o iteración. MATLAB
permite definir dos tipos distintos de bucle:
La estructura for – end, permite definir bucles donde el número de iteraciones queda definido al
comienzo del bucle.
La estructura while – end, donde el número de iteraciones depende de que se cumpla o no una
condición determinada.
La estructura de switch/case es
switch variable
case option1
Código a ejecutar si la variable es igual a la opción 1
case option2
Código a ejecutar si la variable es igual a la opción 2
.
.
case option_n
Código a ejecutar si la variable es igual a la opción n
otherwise
Código a ejecutar si la variable no es igual a cualquiera de las opciones
end
Ejemplo: Resultado:
while criterio
Comandos a ejecutar
end
Ejemplo: Resultado:
k=0; k=2
while k <6 k=4
k=k+2 k=6
end
2
6.3 PRE-LABORATORIO
Con la finalidad de tener una figura geométrica cerrada compuesta de líneas rectas los ángulos
en la figura deben sumar
Escriba un programa que pida al usuario ingresar uno de los siguientes polígonos:
Triángulo Cuadrado Pentágono Hexágono
3
2. Elabore un archivo m (Nombre del archivo: Carrera_ClaveUnica_Pre6_2)
4
3. Elabore un archivo m (Nombre del archivo: Carrera_ClaveUnica_Pre6_3)
Realice un programa que calcule el promedio de las calificaciones de un alumno. El programa pedirá el
número de calificaciones y la calificación una por una.
Correr el programa para los tres casos posibles. (APROBADO, EXTRAORDINARIO, TITULO)
5
4. Elabore un archivo m (Nombre del archivo: Carrera_ClaveUnica_Pre6_4)
Deseamos sumar todos los elementos aij de una matriz n x m. Esto se puede hacer realizando la
suma
𝑛 𝑚
𝑠𝑢𝑚𝑎 = ∑ ∑ 𝑎𝑖𝑗
𝑖=1 𝑗=1
6
6.4 DESARROLLO DE LA PRÁCTICA
𝑥𝑓
𝐼 = ∫ 𝑓(𝑥)𝑑𝑥
𝑥𝑜
Para integrar la función, es necesario dar valores iniciales a x desde x0 hasta xf para obtener una
tabla de y en función de x. es requisito que los intervalos entre puntos sean iguales, es decir que
h tenga siempre el mismo valor; y el número de intervalos debe ser par.
𝑛 𝑛−1
𝑖=𝑖+2 𝑖=𝑖+2
ℎ
𝐼= 𝑦 + 4 ∑ 𝑦𝑖 + 2 ∑ 𝑦𝑖 + 𝑦𝑛+1
3 1
𝑖=2 𝑖=3
( )
∫(4𝑥 3 − 4𝑥 4 − 3)𝑑𝑥
1
Solución analítica:
6
4 5 4 4
𝐼 = [𝑥 − 𝑥 − 3𝑥] = (64 − ∗ 65 − 3 ∗ 6) − (14 − ∗ 15 − 3 ∗ 1)
4
5 1 5 5
7
1. Elabore un archivo en Excel (Nombre del archivo: Carrera_ClaveUnica_Dpract6_1)
Elabore un archivo en Matlab (Nombre del archivo: Carrera_ClaveUnica_Dpract6_1)
∫(4𝑥 3 − 4𝑥 4 − 3)𝑑𝑥
1
b) Una vez obtenidos los valores de los intervalos; x y f(x) aplicamos la fórmula de Simpson 1/3
para obtener la integral.
8
Grafica de Excel
-1000.00000
-1500.00000
-2000.00000
y=4x^3-4x^4-3
-2500.00000
-3000.00000
-3500.00000
-4000.00000
-4500.00000
-5000.00000
X
Grafica de Matlab
9
2. Elabore un archivo en Excel (Nombre del archivo: Carrera_ClaveUnica_Dpract6_2)
Elabore un archivo matlab (Nombre del archivo: Carrera_ClaveUnica_Dpract6_2)
Una partícula de masa m se mueve a través de un fluido, sujeta a una resistencia R que es función
de la velocidad 𝑣 𝑑𝑒 𝑚. La relación entre la resistencia R, la velocidad 𝑣 y el tiempo 𝑡 esta dada
por la ecuación.
𝑣𝑓
𝑚
𝑡=∫ 𝑑𝑣
𝑣0 𝑅(𝑣)
Supóngase que 𝑅(𝑣) = −𝑣√𝑣 + 0.0001 para un fluido particular. Si m=10 kg y 𝒗𝟎 = 𝟏𝟎 𝒎/𝒔 ,
aproxime el tiempo requerido para que la partícula reduzca su velocidad a 𝒗𝒇 = 𝟓 𝒎/𝒔
Usando el método de Simpson 1/3. (Proponer n=18 intervalos)
10
6.5 PRE-LABORATORIO
Estructura While
Elabore un archivo m (Nombre del archivo: Carrera_ClaveUnica_Pre7_1)
Ejemplo:
11
Elabore un archivo m (Nombre del archivo: Carrera_ClaveUnica_Pre7_2)
Dado el siguiente vector, hacer un programa que indique en que posiciones se encuentran
números negativos.
12
Elabore un archivo m (Nombre del archivo: Carrera_ClaveUnica_Pre7_3)
Ventas = [2000 5000 100 800 300 1000 2200 350 50 1300]
13
Elabore un archivo m (Nombre del archivo: Carrera_ClaveUnica_Pre7_4)
Elaborar un programa que pida datos (nombre, edad, coeficiente) de n personas y genere una
lista de ellos
Ejemplo:
14
7.1 DESARROLLO DE LA PRACTICA
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.
𝒙𝟏 − 𝒙𝟎
𝒙𝟐 = 𝒙𝟎 + 𝒇𝟎 ∗
𝒇 𝟎 − 𝒇𝟏
𝒇(𝒙) = 𝟐𝒙 − 𝟓𝒙
1. Se proponen valores iniciales de X0 y X1
Valores propuestos:
X0=0.5
X1=1
𝑿𝟏 = 𝟏 𝑓1 = 21 − 5 ∗ 1 𝒇𝟏 = −𝟑. 𝟎𝟎𝟎𝟎𝟎
4. Una vez obtenidos los valores; X y f(x) se aplica la fórmula de Secante para obtener el siguiente
valor de X, que se llamara X2.
Secante:
𝑋1− 𝑋0 1 − 0.5
𝑋2 = 𝑋0 + 𝑓0 ∗ 𝑋2 = 0.5 + (−1.085786) ∗ 𝑿𝟐 = 𝟎. 𝟐𝟏𝟔𝟑𝟖𝟖
𝑓0 − 𝑓1 −1.085786 − 3.0
15
Solución por pasos.
Primera iteración:
𝑿𝟎 = 𝟎. 𝟓 𝑓0 = 20.5 − 5 ∗ 0.5 𝒇𝟎 = −𝟏. 𝟎𝟖𝟓𝟕𝟖𝟔
𝑿𝟏 = 𝟏 𝑓1 = 21 − 5 ∗ 1 𝒇𝟏 = −𝟑. 𝟎𝟎𝟎𝟎𝟎
Secante:
𝑋1− 𝑋0 1 − 0.5
𝑋2 = 𝑋0 + 𝑓0 ∗ 𝑋2 = 0.5 + (−1.085786) ∗ 𝑿𝟐 = 𝟎. 𝟐𝟏𝟔𝟑𝟖𝟖
𝑓0 − 𝑓1 −1.085786 − 3.0
Segunda iteración:
𝑿𝟎 = 𝑿𝟏 = 𝟏 𝑓0 = 21 − 5 ∗ 1 𝒇𝟎 = −𝟑. 𝟎𝟎𝟎𝟎𝟎
Secante:
𝑋1− 𝑋0 0.216388 − 1
𝑋2 = 𝑋0 + 𝑓0 ∗ 𝑋2 = 1.0 + (−3.0) ∗ 𝑿𝟐 = 𝟎. 𝟐𝟑𝟔𝟕𝟏𝟐
𝑓0 − 𝑓1 −3.0 − 0.079880
Tercera iteración:
𝑿𝟎 = 𝑿𝟏 = 𝟎. 𝟐𝟏𝟔𝟑𝟖𝟖 𝑓0 = 20.216388 − 5 ∗ 0.216388 𝒇𝟎 = 𝟎. 𝟎𝟕𝟗𝟖𝟖0
Secante:
𝑋1− 𝑋0 0.236712 − 0.216388
𝑋2 = 𝑋0 + 𝑓0 ∗ 𝑋2 = 0.216388 + (0.079880) ∗ 𝑿 = 𝟎. 𝟐𝟑𝟓𝟒𝟓𝟕
𝑓0 − 𝑓1 0.079880 − (−0.005256) 𝟐
Cuarta iteración:
𝑿𝟎 = 𝑿𝟏 = 𝟎. 𝟐𝟑𝟔𝟕𝟏𝟐 𝑓0 = 20.236712 − 5 ∗ 0.236712 𝒇𝟎 = −𝟎. 𝟎𝟎𝟓𝟐𝟓𝟔
Secante:
𝑋1− 𝑋0 0.235457 − 0.236712
𝑋2 = 𝑋0 + 𝑓0 ∗ 𝑋2 = 0.236712 + (−0.005256) ∗ 𝑿 = 𝟎. 𝟐𝟑𝟓𝟒𝟓𝟔
𝑓0 − 𝑓1 −0.005256 − (−0.000007) 𝟐
16
Elabore un archivo en Excel (Nombre del archivo: Carrera_ClaveUnica_Dpract7_1)
Elabore un archivo en Matlab (Nombre del archivo: Carrera_ClaveUnica_Dpract7_1)
17
Elabore un archivo en Excel (Nombre del archivo: Carrera_ClaveUnica_Dpract7_2)
Elabore un archivo en Matlab (Nombre del archivo: Carrera_ClaveUnica_Dpract7_2)
Para conocer el número y valor aproximado de las raíces se dibuja la gráfica de la función en
Matlab.
Por ejemplo:
fplot('(10+3.599/x^2 )*(x-.04267)-.08205*353.2',[2,3]),grid on
18
7.2. POST-LABORATORIO
Calcule el cambio de entropía ∆𝑺 , que sufre un gas ideal a presión constante al cambiar su
temperatura de 300 a 380 K. Utilice el Calcular el promedio de Cp, e introducirlo como una
constante en la formula.
Considere n=18
𝑻𝒔 𝑪
𝒑
∆𝑺 = ∫ 𝒅𝒕
𝑻𝟏 𝑻
T(k) 300 310 320 330 340 350 360 370 380 390 400
𝑐𝑎𝑙 4.87 5.02 5.06 5.11 5.16 5.19 5.22 5.25 5.26 5.28 5.30
𝐶𝑝 ( 𝐾)
𝑚𝑜𝑙
19
Aplicación: Método de la Secante
Elabore un archivo en Excel (Nombre del archivo: Carrera_ClaveUnica_Post7_2)
Elabore un archivo en Matlab (Nombre del archivo: Carrera_ClaveUnica_Post7_2)
Cuando se lanza un proyectil se producen vibraciones que flexionan algunas de sus partes.
La magnitud de la flexión depende del empuje E. La ecuación que se asocia con las vibraciones
de un proyectil es la siguiente:
𝒙𝟐 (𝟏 − 𝒄𝒐𝒔(𝒙)𝒄𝒐𝒔𝒉(𝒙)) − 𝜸𝒔𝒆𝒏(𝒙)𝒔𝒆𝒏𝒉(𝒙) = 𝟎
Determine las tres primeras raíces positivas, sin considerar la raíz 𝑥̅ = 0, por ser una solución
trivial.
fplot('x^2*(1-cos(x)*cosh(x))-0.002*sin(x)*sinh(x)',[-1,15]),grid on
axis([-1,15,-.1,.1])
Primera raíz:
Excel - Método de la Secante Matlab – Método de la Secante
20