Sie sind auf Seite 1von 20

PROCESAMIENTO DE DATOS

LABORATORIO N° 03
MATLAB – 2017 Introducción al uso de
funciones, Funciones lógicas y estructuras de
control, principios de programación.
CODIGO DEL CURSO:

Alumno(s)

Ocsa Rios Diego Oswaldo

Muy Muy
Bueno Regular
Rúbrica: bueno Malo(2) Malo
(4) (3)
(5) (1)
Trabaja con el entorno de Matlab
para ingresar datos y generar
gráficos en dos dimensiones.
Resuelve ecuaciones con Matlab.
Realiza gráficos de funciones con
Matlab.
Observaciones y conclusiones.

Nota
Grupo C-21
Ciclo 1
Fecha de entrega 09/10/2018

PROGRAMA DE FORMACIÓN REGULAR


Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 2 de 20

I.- OBJETIVOS:
1. Manejar y comprender el uso de funciones matemáticas, trigonométricas en programa Matlab.
2. Identificar la ventana workspace.
3. Solucionar problemas planteados de funciones.
4. Emplear lógica para dar solución a problemas planteados.

II.- SEGURIDAD:
Advertencia:
En este laboratorio está prohibida la manipulación del
hardware, conexiones eléctricas o de red; así como la ingestión
de alimentos o bebidas.
Al culminar la sesión de laboratorio, apagar correctamente la
computadora y el monitor

III.- FUNDAMENTO TEÓRICO:


El docente dará una breve explicación para reforzar lo aprendido en las exposiciones.

IV.- NORMAS EMPLEADAS:


No aplica

V.- RECURSOS:
● En este laboratorio cada alumno trabajará con un equipo con Windows 8.

VI.- METODOLOGÍA PARA EL DESARROLLO DE LA TAREA:


● El desarrollo del laboratorio es individual.

VII.- PROCEDIMIENTO:
Nota:
En cada una de las sesiones se aprenderá a utilizar varias de las funciones de MATLAB que habitualmente se
usan para generar y manipular señales.

USO DE FUNCIONES

Las funciones son procedimientos que recogen datos de entrada, los procesan y devuelven un resultado. La
estructura de una función es la siguiente:

function [ argumentos_de_salida ] = Nombre_Funcion( argumentos_entrada )


declaraciones o sentencias
end

En donde:

 Nombre_funcion, es el nombre significativo que se le asigna a la función y coincide con el nombre del
fichero de extensión .m en el que se guarda el código de dicha función. Las reglas para nombrar una
función son las mismas que para las variables, los nombres no deben de incluir espacios, ni se pueden
utilizar palabras reservadas por MATLAB.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 3 de 20

 Variables_Entrada, es el conjunto de parámetros que se le pasa a la función. Los nombres de las


variables van entre paréntesis y separadas por coma.
 Variabales_Salida, es el valor o conjunto de valores de las variables devueltos por la función. Las
variables de salida van después de la palabra reservada function entre corchetes cuadrados y separados
por comas si hay varios.
 Sentencias, líneas de código que tomando los valores de los parámetros de entrada calculan mediante
expresiones los valores que devuelve la función.
 End, marca el final de la función es opcional (salvo en las funciones anidadas) pero es conveniente
acostumbrarse a ponerlo al finalizar la función.

DEFINICION DE UNA FUNCION

1. Encienda e ingrese a la máquina virtual que tiene instalado el software Matlab 2007b, proceda a abrir el
software Matlap e ingrese en el PROMPT lo siguiente:

>> Edit suma

2. Se procederá a abrir el editor con el nombre suma, en el cual deberán de ingresar el siguiente código:

3. Proceda a guardar dicho código, deberá de guardarlo con el mismo nombre asignado a la función, en este caso
con la palabra sum, en las opciones de editor File/Save as...
4. Una vez ingresado y guardado el código procederemos a ingresar en la ventana de commant window , dentro
del PROMPT LO siguiente:

Mencione el funcionamiento al realizar el llamado a la función y haga nuevamente el llamado de la función


haciendo esta vez utilizando los numero 5 y 8, indique que es lo que sucede.

Al ejecutar el comando suma(2,3), se llama a la función “suma”, el cual recibe 2 valores de entrada y de vuelve un
solo valor Z que es la suma de los dos primeros. En este caso al ingresar suma(2,3) la función realiza la suma de
2+3 y se le asigna a z, dando como resultado y mostrándonos en pantalla z = 5. Lo mismo ocurre cuando ejecutamos
suma(5,8), mostrándonos en pantalla Z = 13.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 4 de 20

Ejemplo: Escribir una función para que calcule si un año es o no bisiesto. Si es bisiesto devuelva un 1, caso
contrario devuelva un 0.

Para ejecutar esta función ingresamos.

>>bisies(2010)
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 5 de 20

Ingrese los resultados que muestra y explique.

Al ejecutar bisies(2010) nos muestra como respuesta ans = 0 lo cual nos indica que el año 2010 no es bisiesto. La
función compara a un año ingresado donde mostrara “0” que no es bisiesto si este año es divisible por cuatro y no es
divisible por 100, o si es divisible por 4 y es divisible por 400; caso contrario mostrara “1” indicando que si es
bisiesto.

FUNCIONES MATEMÁTICAS

MATLAB reconoce las funciones matemáticas elementales:

1. Hay muchas más funciones que se pueden consultar tecleando en el PROMPT help elfun. Aparte de estar el
nombre en ingles (por ejemplo, el seno es sin (del inglés sine)), hay que tener en cuenta unos pequeños
detalles para evitar errores al usar funciones:
• Las funciones trigonométricas tienen el argumento en radianes.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 6 de 20

• MATLAB reserva log para el logaritmo neperiano, coherentemente con el uso habitual en matemática
superior, pero en contraste con la practica en ingeniería en donde son más usados el logaritmo decimal o
el de base 2.

¿Cuál es la información que se muestra luego de teclear help elfun en la ventana de comandos?, indique
también cuales son las funciones disponibles tecleando con help specfun.

Al ejecutar el comando help elfun nos muestra diferentes funciones matemáticas, tanto Trigonometric,
Exponential, Complex y Rouding and Remainder; donde podemos encontrar diferentes funciones como seno,
coseno, exponencial, valor absoluto, modulo. Búsqueda, etc.
Al ejecutar el comando help spectrum nos muestra más funciones matemáticas pero más complejas y especiales,
nos muestra funciones Specialized math functions, Number theoretic functions, Coordinate transforms.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 7 de 20
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 8 de 20
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 9 de 20

La forma correcta de ingresar las funciones trigonométricas se muestra en el siguiente cuadro:

Ingrese en el PROMPT cada función trigonométrica dando el valor de x=1 e indique los resultados:
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 10 de 20

PRINCIPIOS DE PROGRAMACIÓN

El lenguaje de programación de Matlab se llama código M. Este lenguaje tiene las mismas estructuras básicas de
programación de cualquier otro lenguaje, es decir, bucles y condicionales, entradas y salidas, manejo de funciones
y procedimientos.

Modo De Ingreso Al Script, ingresando en file>>new>>script, conbimacion de tecla Ctrl+N en versiones de 2010
en adelante y para versiones anteriores ingresar en el PROMT

>>edit seguido del nombre a asignar al programa

Luego aparece un mensaje que indica que el archivo no existe y pregunta si es que debemos crearlo, a lo que se
responde que sí.

Aparece el entorno de programación, en el cual deberán de ingresar el código, por ejemplo ingrese el siguiente
código y guárdelo:

Luego para ejecutar ingrese en el PROMPT el nombre del programa y luego presiones enter.

>>ejercicio1
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 11 de 20

Anote que es lo que sucede.

Al ejecutar ejercicio1 nos muestra un texto “Hola Mundo Cruel”, el cual es el mismo que introducimos al
momento de desarrollar el código de ejercicio1.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 12 de 20

COMANDOS BASICOS

Funciones Lógicas

IF-END, IF-ELSE-END: Este es un comando condicional, SU SINTAXIS ES:

Ejercicio 1:
Escribir un programa que indique si un año es bisiesto. Para esto se debe considerar lo siguiente: un año es
bisiesto si es múltiplo de 4 excepto que también sea múltiplo de 100 y lo anterior queda descartado si también es
múltiplo de 400. Así, por ejemplo el año 2000 es múltiplo de 4 por tanto en primera instancia decimos que es
bisiesto, pero como también es múltiplo de 100 decimos que no es bisiesto, pero en definitiva al ver que es
múltiplo de 400 concluimos que si es bisiesto. La tabla de verdad es la siguiente, donde a, b y c indican la
multiplicidad respecto 4,100 y 400.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 13 de 20

Ingrese el siguiente código:

Este programa utiliza la función mod, que devuelve el residuo de la división de los dos argumentos, así por
ejemplo: mod(5,2) da como resultado 1.

Para ejecutar esta función, se la llama dándole un argumento:

>>ejercicio1

Ingrese la respuesta y explique:

Al ejecutar ejercicio1, nos muestra un texto,”Introduzca un año: ”, y nos deja introducir un valor numérico que
será un año. Al introducir un año, automáticamente nos mostrara otro texto indicándonos si este año ingresado es
bisiesto o no.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 14 de 20

SWITCH_CASE: verifica la expresión, y ejecuta las acciones ubicadas en el case cuyo valor sea el mismo. Si el
resultado no concuerda con ningún case, ejecuta las acciones correspondientes a otherwise. Su sintaxis es:

Ejercicio 2

Guarde y ejecute el condigo anterior, ¿Qué es lo que ocurre?, explique:

Al ejecutar ejercicio2 nos muestra 2 diálogos donde nos pedirá que ingresemos un numero en cada uno, después nos
mostrara otro dialogo donde nos pedirá que escojamos que operación deseamos realizar con los números
anteriormente ingresados; indicándonos que 1 es suma y 2 es resta, al ingresar cualquiera de estas opciones el
programa ejecutara la operación indicada, caso contrario si ingresamos una operación incorrecta nos votara el texto
“Opción incorrecta, Ingresa un número válido”.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 15 de 20

BUCLES Y ESTRUCTURAS DE REPETICION

WHILE-END: Realiza declaraciones del programa hasta que pruebe que sea falsa. Si la cláusula-prueba es falsa
la cláusula- bucle no se realiza ni una sola vez.

Ejercicio 3:

Realizar una función que, dados como datos el número de filas de una matriz y el índice relativo, devuelva la fila y
la columna a la que pertenece ese índice.

Así en la anterior matriz si se le da como datos 2 (que es el número de filas y 10 (el índice) la función devolverá
fila=2 y columna=5.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 16 de 20

Para llamar a la función se debe utilizar la siguiente sintaxis.

Explique la de que trata la función y pruebe cambiando los valores a su criterio.

Al ingresar [f,c]=índice(2,10), nos mostrara f = 2 y c = 5, indicándonos que el valor se encontrara en la fila 2


columna 5. Cambiando los valores [f,c]=índice(3,20), nos mostrara f = 2 y c = 7 , indicándonos que el valor se
encontrara en la fila 2 columna 7.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 17 de 20

FOR-END: Permite ejecutar de forma repetitiva un comando o grupo de comandos si no se encuentra con la
sentencia END el bucle, continúa sin finalizar. LA SINTAXIS ES:

Ejercicio 4

Ejecute la siguiente sentencia:

Indique la respuesta y explique

El código ejecutado a creado una array v en el cual se le han ido añadiendo el valor de 1 a cada uno de sus índices,
el cual empezó en 1 y culmino en el tercero ya que esto se indicó en el bucle for; mostrándonos v = 1 1 1, como
respuesta.

BREAK: Hace que se termine la ejecución de un bucle for o while.

Ingrese los siguientes códigos en el Matlab:

Ejercicio 5

Ingrese el siguiente código y ejecútelo


Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 18 de 20

Explique y apunte las respuestas al ejecutar el código:

Para realizar este código se tuvo que modificar un poco al código tipo mostrado en este informe, con el objetivo de
plasmar la idea que pedía el ejercicio pero con código neto de Matlab, utilizando la función “input” en vez de
“prompt” y modificando el “for” con la sintaxis de Matlab.
Este ejercicio genera un bucle el cual nos preguntara si queremos seguir ejecutando el bucle; si escribimos “no”
automáticamente el ejercicio terminara, mientras que si escribimos “si” este bucle se seguirá ejecutando hasta que
escribamos “no” o haya dado 10 vueltas en total.

CONTINUE: Sirve para volver al principio del bucle en cualquier momento, sin ejecutar las líneas que haya por
debajo de la palabra continue.

Ejercicio 6

Ingrese el código y ejecute


Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 19 de 20

Explique y apunte las respuestas al ejecutar el código:

Al igual que en el ejercicio anterior tuve que modificar algunas sentencias el código tipo dado por este informe, ya
que, este no es netamente Matlab, eliminamos los corchetes reemplazándoles por “end”, eliminamos los paréntesis
del bucle “while”, cambiamos “prompt” por “input” , agregamos la función “strcmp” para comparar strings y la
función “strcat” para concatenar strings.
Este ejercicio ejecutara un bucle en el cual incrementara una variable “i” siempre y cuando nosotros le señalemos que
lo haga al momento que nos pregunte, en caso contrario no incrementara. En caso que esta variable ”i” llegue al
valor de “7”; el bucle terminara. Mostrándonos la variable de “i” y su valor.
Nro. DD-106
Procesamiento de Datos – Lab. 02
Entorno de Matlab y la ventana de comandos
Página 20 de 20

Observaciones
 El código mostrado en este informe, específicamente en los ejercicios 5 y 6, nos muestra unos ejercicios
el cual no está escrito en lenguaje Matlab, pareciéndose a JavaScript, por lo cual se tuvieron que
modificar este código para llevarlo al lenguaje de Matlab y logrando que se ejecute exactamente lo que
se requiere.
 Matlab es una plataforma en el cual se puede escribir código para realizar diferentes tareas, simulando
lenguajes de programación como C++ y Java; teniendo sus propias funciones y sintaxis.

Conclusiones
1. Manejamos y comprendimos el uso de las funciones matemáticas, trigonométricas en Matlab.
2. Identificamos la ventana workspace por medio del cual hacemos el llamado de las funciones
creadas en los ejercicios.
3. Logramos solucionar diferentes problemas planteados de funciones, en diferentes ejercicios
utilizando matrices y arrays.
4. Empleamos funciones lógicas para realizar diferentes ejercicios utilizando las sentencias “if”,
“switch-case”, “for” y “while”.

Das könnte Ihnen auch gefallen