SESIÓN 1.
- Repaso de los apuntes e identificación de páginas a recordar por su utilidad
- Escribir, guardar y ejecutar un programa sencillo. Opciones Script.
- A partir de una expresión, por ejemplo (ver la figura), escribir el programa y buscar por iniciaiva propia del alumnado como poner el nombre de las funciones en Matlab.
- Concepto de variable, vector y matriz en Matlab
- Comandos y funciones vistas
-
- clc, input, asignación, sqrt, abs.
-
- Reglas y trucos
-
- Asignación.
-
SESIÓN 2
- Repaso de los apuntes e identificación de páginas a recordar por su utilidad.
- Utilizar y entender las ventanas “Command Windows” y “Workspace” de Matlap
- Concepto sentencia “for”- bucles determinados. Concepto y apuntes.
- Trabajando con matrices
- Realizar un script Matlab utilizando el bucle for para realiar la expresión h(i)=a(i)+b(i) para 1<= i <=n, siendo n la longitud del vector a. Solución aportada por Alonso Garay.
- Realizar un script que intercambie los valores de dos vectores de dimensión
- Ejercicios similares con soluciones en video (por si no ha quedado claro
- V(i)=5+P, siendo 1<=i<=4. Acceso a solución
- C(i)=A(i)+B(i)-3/I para un vectores de 3 elementos. Acceso Solución.
- Otras secciones
- Comandos y funciones vistas. “sentencia for”
- Dudas: Aportadas por Lydia Yglesias.
- Cómo borrar los datos. En command Windows “clc”. El valor de los datos “clear all”
- Como cargar datos a un vector – Respuesta – Cuando el input pida los datos hay que abrir corchetes para cada vector, y cuanto tienes cada vector hecho, darle al “enter”.
SESIÓN 3
- Repaso de los apuntes e identificación de páginas a recordar por su utilidad.
- Practicando un poco
- Ejercicio 1. A(i)=3*i-A(i) para 1<i<n, siendo “n” la longitud del vector A. Solución
- Error típico. Al final se trata de mostrar un elemento del vector en lugar del vector. Ver.
- Ejercicio 2. M(i,1)=M(1,i)+2*i para 1<=i<n, siendo “n” el número de filas de la matriz cuadrada M. Solución.
- Ejercicio 3. Super reto. M(i,j)=A(i)-B(j) para 1<=i,j<=n siendo “n” la longitud del vector A y B y el número de filas y columnas de la matriz M.
- Ejercicio 1. A(i)=3*i-A(i) para 1<i<n, siendo “n” la longitud del vector A. Solución
- Sumatorios. Explicación concepto paso a paso (ejemplo con sumatorio de los elementos de un vector)
- (Nuevo). Productorios. Ejemplo para productorio de (V(i)-x)
- Sentencia IF concepto. Enlace
- Un ejemplo muy típico FOR + IF.
- Dudas
- ¿Por qué en esta expresión a=3*i-a(i), variando i desde 1 hasta n, no hay que dar valores a i?. Acceso a la duda y respuesta.
SESIÓN 4.
Bucle While
- Concepto y Ejemplo. Acceso al video.
Subprogramas «function»
- Explicación concepto. Acceso al video.
- Ejemplo con varias variables de salida. Acceso al video.
Dibujar gráficas con la sentencia Plot.
- Dibujar una función a través de sus vectores de abcisas y ordenadas. Acceso al video.
- Dibujar una función Matlab punto a punto. Acceso al video.
Ejercicio propuesto número 2 (para nota)
- Acceso (a través de Moodle).
SESIÓN 5. VIDEO CONFERENCIA 25 DE MARZO.
Primera parte:
Segunda parte
SESIÓN 6. VIDEO CONFERENCIA 1 DE ABRIL.
Parte 1. Resolución del ejercicio sumatorio de un productorio.
Solución: (grabación de parte de la sesión presencial)
Parte 2. Introducción al cálculo simbólico.
Se ha trabajado con los siguientes enlaces (ejercicios autoguiados)
Parte 3. Ejercicio propuesto voluntario (no nota). Plazo de entrega martes 7 de abril a las 23:59. Lugar de entrega.
Ejercicio propuesto (operciones con sumatorios y productorios)
Solución: en la sesión virtual del miércoles 8 de abril
SESIÓN 7. VIDEOCONFERENCIA 8 DE ABRIL
Asignar elementos entre vectores mediante bucles. ejemplo x=v(3:8)
Prácticas sumatorios y productorios.
Bucle while
- Bucle while (flag==0) para repetir un conjunto determinado de sentencias. https://youtu.be/yjQLixvScMc
- Ejercicio para conocer distintas foramas de aplicar el bucle while: “Calcular el sumatorio de los elementos del vector a hasta que la cantidad sea igual o superior a 100 o que se hayan realizado el número de iteraciones correspondiente a la parte entera (longitud a/2) +1”
- Soluciones:
- Utilización de While (flag==0) https://youtu.be/W8BPpdpPlyM
- Utilización de While (condición de entrada) versión 1. https://youtu.be/giNatkQ4fhc
- Utilización de While (condición de entrada) versión 2 https://youtu.be/-WErDv4goRw
- Soluciones:
- Ejercicio propuesto para aplicar los conceptos anteriores.Enunciado.
Apartado A. Introducir un vector a de n elementos con valores aleatorios comprendidos entre 0 y 10. El programa no debe dejar seguir la ejecución a menos que el vector tenga un mínimo de 6 elementos.
Apartado B. Sumar los elementos del vector a mientras se cumpla que el valor absoluto de la diferencia entre el elemento i-ésimo de a y el i-ésimo +1 sea distinto de 0 y que el número de iteraciones sea menor que n-2 |
- Solución. Enlace al programa.
SESIÓN 13 DE MAYO.
- Ejercicio propuesto (no nota)
Análisis de errores más comunes:
- Se combinan bucles for y while de forma integrada. Únicamente es un bucle while.
- Llamada a la función: Se llama de forma equivocada a la función.
Solución al ejercicio.
2. Práctica de clase.
- Función SOP Apartado 2 https://youtu.be/8c_tiD9mePA
- Función SOP Apartado 3 https://youtu.be/-GYCfTBi4SA
- Subprograma MAT y programa principal (apartados 1-6) https://youtu.be/Gtu0AbzXsLQ
- Programas utilizados
- Función SOP https://drive.google.com/file/d/1_oxVGIgx1WTmuKO9KkFksTaWKupGKERf/view?usp=sharing
- Función MAT https://drive.google.com/file/d/1A8HNdgmJeA8t72oo6V4C6OdVab7z-wXP/view?usp=sharing
- Programa Principal https://drive.google.com/file/d/1aahhKXhNSmjQrL6PbAAhjGrNchjZXGCX/view?usp=sharing
Han preguntado por el New Script y por como borrar datos en el Command Window
como se daban valores a un vector?
hay que abrir los corchetes para cada vector, y cuando tienes cada vector hecho, darle al enter
solución al ejercicio 1 de la sesión 3 verificado por el profesor
clc
clear all
a=input(‘vector a?’);
n=length(a);
%ojo. 1<i<n, por tanto los limites son distintos
for i=2:1:n-1
a(i)=3*i-a(i);
end
a
%solución correcta verifica por el profesor
clc
a=input(‘a ? ‘);
b=input(‘b ? ‘);
n=length(a);
for i=1:n
h(i)=a(i)+b(i);
end
h
Dudas sesion 3, ejercicio 1:
necesito darle un valor a i?
no por que el bucle «for» asigna los valores a i
El ejercicio está mal. El error está en la última línea, ya que tendríamos que escribir «a» para que salga el valor del vector. En el caso de escribir «a(i)» sale solo el valor del cuarto elemento del vector.
clc
clear all
a=input(‘a? ‘);
n=length(a);
for i=1:1:n
a(i)=3*i-a(i);
end
a(i)
%solucion del ejercicio 2 corregida por el profesor
clc
clear all;
M=input(«M?»);
[nf,nc]=size(M);%Nueva funció size nos da el número de filas y columnas en nf y nc
%ojo. a la izquierda de la expresion hay dos partes pero al ser una
%constante (1) solo se toma en cuenta i para realizar el bucle for.
for i=1:1:nf-1
M(i,1)=M(1,i)+2*i;
end
M
#DUDAS_S4_BUCLES. Poner las dudas respondiendo a este mensaje
#DUDAS_S4_FUNCIONES. Poner las dudas respondiendo a este mensaje
#DUDAS_S4_COMANDO_PLOT. Poner las dudas respondiendo a este mensaje
#DUDAS EJERCICIO PROPUESTO 1. CONTESTAR EN ESTE HILO