Publicado el 4 de Julio del 2019
609 visualizaciones desde el 4 de Julio del 2019
968,0 KB
33 paginas
Creado hace 9a (04/11/2014)
BLOQUE TEMÁTICO II
TEMA 5
TEMA 5. PROGRAMACIÓN BÁSICA EN MATLAB ®/OCTAVE
5.1. Introducción a Matlab y Octave
5.2. Entrada y salida con formato
5.3. Programas: script y funciones
5.4. Estructuras alternativas o condicionales
5.5. Estructuras repetitivas o bucles
5.6. Aplicación de MATLAB ® / Octave a casos prácticos de ingeniería
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
• LAS SECCIONES DEL CÓDIGO DE LOS PROGRAMAS DE CÓMPUTO SE PUEDEN
CATEGORIZAR EN UNA DE
SECUENCIAS,
ESTRUCTURAS ALTERNATIVAS Y ESTRUCTURAS DE REPETICIÓN
ESTRUCTURAS:
ESTAS
TRES
• LAS SECUENCIAS SON LISTAS DE COMANDOS QUE SE EJECUTAN UNA DESPUÉS
DE OTRA.
• UNA ESTRUCTURA ALTERNATIVA PERMITE AL PROGRAMADOR EJECUTAR UN
COMANDO (O CONJUNTO DE COMANDOS) SI ALGÚN CRITERIO ES VERDADERO Y
UN SEGUNDO COMANDO O CONJUNTO CUANDO ES FALSO. PARA ESTO SE
EMPLEAN CONDICIONES
SON EVALUADAS MEDIANTE
OPERADORES RELACIONALES Y LÓGICOS.
LÓGICAS QUE
• UNA ESTRUCTURA REPETITIVA O BUCLE PERMITE QUE UN GRUPO DE
ENUNCIADOS SE EJECUTE VARIAS VECES. EL NÚMERO DE VECES QUE SE EJECUTA
DEPENDE DE UN CONTADOR O DE LA EVALUACIÓN DE UNA CONDICIÓN LÓGICA.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
OPERADORES RELACIONALES Y LÓGICOS
ESTRUCTURAS ALTERNATIVAS Y DE REPETICIÓN DEPENDEN DE
• LAS
OPERADORES RELACIONALES Y LÓGICOS.
• OCTAVE TIENE LOS SIGUIENTES OPERADORES:
RELACIONALES
RESPUESTA
EN OCTAVE
LÓGICOS
TABLA DE LA VERDAD
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo:
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
FUNCIONES LÓGICAS
OCTAVE OFRECE TANTO LAS ESTRUCTURAS ALTERNATIVAS TRADICIONALES (IF)
COMO UNA SERIE DE FUNCIONES LÓGICAS QUE REALIZAN LA MISMA TAREA.
find
Ejemplo:
SE USA TANTO EN ESTRUCTURAS ALTERNATIVAS
COMO EN REPETITIVAS.
SIRVE PARA IDENTIFICAR QUE ELEMENTOS DE
UNA MATRIZ SATISFACEN UN CRITERIO DADO.
find(nombre_vector<>=valor)
altura=[63,67,65,72,69,78,75] % VECTOR DE DATOS DE ALTURA
aceptados=find(altura>=66) % CON find BUSCAMOS AQUELLOS QUE SON > O = A 66
aceptados=2 4 5 6 7 % PROPORCIONA LAS POSICIONES DEL VECTOR QUE
altura (aceptados) % COMANDO PARA SABER EL DATO DE CADA UNO
ans= 67 72 69 78 75
% SON MAYORES O IGUALES A 66
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo 17a. Usando el comando find ,y tras una serie de alturas que
corresponden con diferentes personas, mostrar aquellas cuya altura es mayor o
igual a 66 y las que no lo son.
VALORES DE ALTURA
OBTENEMOS LA POSICIÓN DE LAS PERSONAS >=66
VECTOR CON LOS VALORES DE LAS ALTURAS
IGUAL CON ALTURAS <66
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo 17b.
fprintf EMPLEANDO MATRICES
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
find
CUANDO SE EMPLEA ESTE COMANDO CON
MATRICES HAY QUE TENER EN CUENTA QUE EL
ORDEN PARA REALIZAR LA BÚSQUEDA DE
AQUELLOS ELEMENTOS QUE CUMPLEN LAS
CONDICIONES ES:
Ejemplo 18a.
Disponemos de la siguiente matriz de valores de temperatura de diferentes
puntos de una instalación. Cada columna representa un termopar diferente y las
filas un punto de la instalación. Desarrollar un programa en Octave que indique
aquellos puntos cuya temperatura sea mayor que 98.6 ºC.
Punto 1
Punto 2
Punto 3
T1
95.3
97.2
100.1
T2
100.2
99.2
99.3
T3
98.6
98.9
97
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo 18b.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo 18c.
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo 19a.
USO DEL COMANDO find CON MATRICES Y CUMPLIMIENTO DE VARIAS
CONDICIONES
Dados los siguientes valores de estatura (pulgadas) y edad (años) encontrar,
empleando el comando find, aquellos que cumplen que la altura es >=66 y la edad
entre 18 y 35.
Estatura (pulg)
Edad (años)
63
67
65
72
69
78
75
18
19
18
20
36
34
12
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo 19b.
(:,1) SIRVE PARA
SABER SI CUMPLE
LAS CONDICIONES
LA COLUMNA 1
CREAMOS LA MATRIZ DE RESULTADOS
(TRANSPONER) Y LOS MOSTRAMOS POR PANTALLA
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
Ejemplo 19c.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
FUNCIONES LÓGICAS
AL SER APLICADA A UN VECTOR O UNA MATRIZ
DEVUELVE UN ESCALAR QUE INDICA SI ALGUNO
DE SUS ELEMENTOS ES CERO
AL SER APLICADA A UN VECTOR O UNA MATRIZ
DEVUELVE UN ESCALAR QUE INDICA SI ALGUNO
DE SUS ELEMENTOS ES DISTINTO DE CERO
any
Ejemplo:
a=[1 0 2 3 4 0]
any(a)
ans=2
all
Ejemplo:
a=[1 0 2 3 4 0]
all(a)
ans=4
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
FUNCIONES LÓGICAS
any
all
ESTAS FUNCIONES SON MUY ÚTILES EN COMBINACIÓN CON OPERADORES
LÓGICOS Y RELACIONALES.
Ejemplo: Si queremos saber si el vector a tiene algún valor negativo lo hacemos
con la orden any(a<0) (¿hay algún número menor que cero en el vector a?).
Si nos interesa saber si todos sus elementos son negativos escribiríamos all(a<0)
(¿todos los componentes de a son menores que cero?)
a=[1 0 2 3 4 0]
all(a<0)
ans=0
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
ESTRUCTURAS ALTERNATIVAS
• COMO TODO LENGUAJE DE PROGRAMACIÓN, OCTAVE DISPONE DE
INSTRUCCIONES DE BIFURCACIÓN QUE PERMITEN EL CONTROL DEL FLUJO DE
ORDENES DE UN PROGRAMA.
• DISPONE DE LAS SIGUIENTES ESTRUCTURAS:
if
if…else
if…elseif…else
switch-case
Otras funciones lógicas especificas de Octave (find)
• LA APLICACIÓN DIRECTA DE OPERADORES LÓGICOS A VECTORES Y MATRICES
RESULTA MUCHO MÁS POTENTE QUE EN OTROS LENGUAJES, EN LOS QUE ESTA
POSIBILIDAD NI TAN SI QUIERA EXISTE.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
ESTRUCTURAS ALTERNATIVA: if
• LA INSTRUCCIÓN if SIMPLE NOS PERMITE COMPROBAR SI SE CUMPLE UNA
CIERTA CONDICIÓN ANTES DE EJECUTAR UNA SERIE DE ORDENES.
• UN ENUNCIADO if SIMPLE TIENE LA SIGUI
Comentarios de: Tema 5-Parte III-Condicionales y alternativas (0)
No hay comentarios