Vous êtes sur la page 1sur 21

Lic.

Edgar Acosta
Lic. Cristian Omar Gonzlez Valdz
Introduccin a
MATLAB
MATLAB Introduccin


MATRIX


LABORATORY


MATLAB

MATLAB es la (Abreviatura de Matrix Laboratory) es un programa para desarrollo e
implementacin de algoritmos numricos o simblicos que ofrece al usuario un
ambiente interactivo de programacin para el estudio y la investigacin en las
diversas reas de las ciencias exactas.
MATLAB Introduccin
MATLAB es un gran programa de clculo tcnico y cientfico. Para ciertas operaciones
es muy rpido, cuando puede ejecutar sus funciones en cdigo nativo con los tamaos
ms adecuados para aprovechar sus capacidades de vectorizacin. En otras
aplicaciones resulta bastante ms lento que el cdigo equivalente desarrollado en
C/C++ o Fortran. En la versin 6.5, MATLAB incorpor un acelerador JIT (Just In Time),
que mejoraba significativamente la velocidad de ejecucin de los ficheros *.m en
ciertas circunstancias, por ejemplo cuando no se hacen llamadas a otros ficheros *.m,
no se utilizan estructuras y clases, etc. Aunque limitado en ese momento, cuando era
aplicable mejoraba sensiblemente la velocidad, haciendo innecesarias ciertas tcnicas
utilizadas en versiones anteriores como la vectorizacin de los algoritmos. En cualquier
caso, el lenguaje de programacin de MATLAB siempre es una magnfica herramienta
de alto nivel para desarrollar aplicaciones tcnicas, fcil de utilizar y que, como ya se ha
dicho, aumenta significativamente la productividad de los programadores respecto a
otros entornos de desarrollo.
MATLAB dispone de un cdigo bsico y de varias libreras especializadas (toolboxes). En
estos apuntes se har referencia exclusiva al cdigo bsico.

MATLAB se puede arrancar como cualquier otra aplicacin de Windows, clicando dos
veces en el icono correspondiente en el escritorio o por medio del men Inicio). Al
arrancar MATLAB se abre una ventana similar a la mostrada en la Figura 1. sta es la vista
que se obtiene eligiendo la opcin Desktop Layout/Default, en el men View. Como esta
configuracin puede ser cambiada fcilmente por el usuario, es posible que en muchos
casos concretos lo que aparezca sea muy diferente. En cualquier caso, una vista similar se
puede conseguir con el citado comando View/Desktop Layout/Default. Esta ventana
inicial requiere unas primeras explicaciones.
MATLAB Introduccin
MATLAB Ventana Inicial
Command
History
Command
Window
Current
Directory/
Workspace
Seleccin de
Directorio de
Trabajo
MATLAB rea de Trabajo
El programa MATLAB se puede utilizar en diferentes plataformas como: Unix, Linux,
Solaris, Windows, Macintosh etc.
Elementos bsicos del escritorio de Matlab

Command Windows: Donde se ejecutan todas las instrucciones y programas. Se
escribe la instruccin o el nombre del programa y se da a Enter.
Command History: Muestra los ltimos comandos ejecutados en Command
Windows. Se puede recuperar el comando haciendo doble
Current directory: Situarse en el directorio donde se va a trabajar
Help (tambin se puede usar desde command window)
Workspace: Para ver las variables que se estn usando y sus dimensiones (si son
matrices)
Editor del Matlab: Todos los ficheros de comandos Matlab deben de llevar la
extensin .m
Algunos comentarios sobre la ventana de comandos
Se pueden recuperar instrucciones con las teclas
Se puede mover por la lnea de comandos con las teclas . Ir al
comienzo de la lnea con la tecla Inicio y al final con Fin. Con Esc se
borra toda la lnea.
Se puede cortar la ejecucin de un programa con Ctrl+C
MATLAB rea de Trabajo
Como Mtodo de Resolucin de Problemas

Los algoritmos son un tipo de resolucin de problemas, aplicables a
cualquier tipo de problema capaz de poder solucionarlos no
importando que tan complejo sea este. Se subdivide en dos tipos de
soluciones: por Diagramas y por Pseudocdigo.




Este tipo de representacin
es una mezcla de
castellano y expresiones
matemticas que permiten
describir de un modo
preciso un programa.
MATLAB Algoritmos
Un lenguaje de programacin es tan slo un medio para expresar un
algoritmo y una computadora es slo un procesador para ejecutarlo.
Tanto el lenguaje de programacin como la computadora son los medios
para obtener un fin: conseguir que el algoritmo se ejecute y se efecte el
proceso correspondiente.
PSEUDOCDIGO
MATLAB Algoritmos
Todo programa escrito en Pseudocdigo comienza con la palabra Inicio y
termina con la palabra Fin.
Cada instruccin se debe de escribir en una lnea.
Para su descripcin se utilizan una serie de palabras reservadas, tales como
Inicio, Fin, Si, Si no, Fin si, Mientras, Fin Mientras, etc.
Debe escribirse tabulando para mostrar claramente las dependencias de unas
instrucciones del programa con respecto a otras.
Cada una de las estructuras que definen un programa tendr un punto de inicio
y uno de fin, especificados por las palabras reservadas que definen la
estructura, a ser por ejemplo Si Fin Si, Mientras Fin Mientras.
PSEUDOCDIGO
ESTRUCTURAS BSICAS DE CONTROL
Cuando se disea una solucin, interesa describir lo que hace de una forma clara,
precisa y sin ambigedades. Para tal fin, el Pseudocdigo utiliza un lenguaje muy
apropiado para describir las tres estructuras bsicas de control que se utilizan en un
programa, como son la ESTRUCTURA SECUENCIAL, la CONDICIONAL y la REPETITIVA.
MATLAB Algoritmos
PSEUDOCDIGO-ESTRUCTURA SECUENCIAL

Es la estructura ms sencilla de todas, consiste en una secuencia de instrucciones,
las instrucciones se ejecutan en un modo lineal, o sea una por una, y en el orden
en que estn escritas las cuales deben ejecutarse todas, sin ir para atrs o saltear
instrucciones, sino como ya se mencion, uno por uno, bien ordenado.
Inicio
A =
Leer B
Si A >B
Imprimir A >B
Fin si
Si A = B
Imprimir A =B
Fin si

Si A < B
Imprimir A< B
Fin si
Fin
MATLAB Algoritmos
PSEUDOCDIGO-ESTRUCTURA CONDICIONAL
Cuando se est construyendo un programa, es normal tener que seleccionar un
conjunto de instrucciones entre varias posibles, dependiendo de que se cumpla o
no una determinada condicin. Esta estructura se clasifica en las siguientes:
Estructura Condicional Simple, Compuesta y Anidada.
Si llueve
Televisin
Fin si
Simples
Compuesta
Si llueve
Televisin
Si no
Cena afuera
Fin si
Anidada
Si llueve
Televisin
Si no
Si hay dinero
Cena afuera
Fin si
Fin si
MATLAB Algoritmos
PSEUDOCDIGO-ESTRUCTURA REPETITIVA
En un programa es normal tener que ejecutar repetidamente un conjunto de
instrucciones, dependiendo de que sea cierta o no una condicin. La condicin se
conoce como condicin de salida y la instruccin se denomina Repetitiva,
Cclica o de Bucle. Existen tres tipos de ciclos: Estructura Tipo Mientras, Tipo
Desde.
Mientras llueve
Televisin
Fin mientras
C =
Desde C=1 hasta 5

C = C + 1
A = B + C
Fin desde
MATLAB Operadores
Una condicin lgica es una expresin determinada mediante
operadores relacionales y lgicos que puede ser verdadera, en cuyo caso
tomara el valor 1, o falsa, en cuyo caso tomara el valor 0.
Operadores relacionales: Operadores lgicos:
Orden de prioridad: Potencias, divisiones y multiplicaciones y por
ltimo sumas y restas. Usar () para cambiar la prioridad
Operador Descripcin
< Menor
<= Menor Igual
> Mayor
>= Mayor Igual
== Igual
~= Distinto
Operador Descripcin
| Or
& And
~ Negacin
MATLAB Operadores
ESTRUCTURAS DE CONTROL

if condicion
sentencias
end
if condicion1
bloque1
elseif condicion2
bloque2
elseif condicion3
bloque3
else % opcin por defecto para cuando no
%se cumplan las condiciones 1,2,3
bloque4
end
switch switch_expresion
case case_expr1,
bloque1
case {case_expr2, case_expr3, case_expr4,...}
bloque2
...
otherwise, % opcin por defecto
bloque3
end
for i=1:n
sentencias
end
Sentencia IF Sentencia FOR
IF Bifurcado
Sentencia SWITCH
Sentencia WHILE
while condicion
sentencias
end
MATLAB Operadores
Ejercicio N - 1
Desarrollar un algoritmo que introduzca dos Nmeros, e indique la relacin entre ellos. Sealar el
mayor, el menor o especificar si son iguales.

Ejercicio N - 2
Dados 3 nmeros, verificar si pueden o no ser las longitudes de los lados de un tringulo, teniendo en
cuenta que ninguno de los lados puede ser mayor o igual que la suma de los otros dos.

Ejercicio N - 3
Leer A, B y C y ordenarlas en forma ascendente usando como auxiliar el campo D, suponiendo que se
desconocen los contenidos de A, B, y C. Imprimir las variable ordenadas.

Ejercicio N - 4
Disear un algoritmo que escriba los nombres de los das de la semana en funcin del valor da en
nmeros. Introducida por teclado, que representa su posicin dentro de la semana (da=1-Domingo,
da=2-Lunes, da=3-Martes, etc.)

Ejercicio N - 5
Leer un nmero e indicar si es par o impar e imprimir el nmero con su respectiva caracterstica
EJERCICIO LOGICA GENERAL


%Ejercicio 1 - Clase 2
% Desarrollar un algoritmo que introduzca dos Nmeros,
%e indique la relacin entre ellos. Sealar el mayor, el
menor o especificar
%si son iguales.
clear
clc
a=input('Ingrese el Primer Numero: ')
b=input('Ingrese el Segundo Numero: ')
if a>b
disp('El Numero mayor es '), disp(a)
elseif a<b
disp('El Numero mayor es '), disp(b)
else
disp('Los Numeros son iguales ')
disp(a)
disp(b)
end
MATLAB Operadores
EJERCICIO 1

%Ejercicio 2 - Clase 1
%Dados 3 nmeros, verificar si pueden o no ser las longitudes de los lados
%de un tringulo, teniendo en cuenta que ninguno de los lados puede ser mayor
%o igual que la suma de los otros dos.
clear
clc
a=input('Ingrese el Primer Numero: ')
b=input('Ingrese el Segundo Numero: ')
c=input('Ingrese el Tercer Numero: ')
if a>=(b+c)
disp('Los valores ingresados no corresponden a un triangulo')
disp(a),disp(b),disp(c)
elseif b>=(a+c)
disp('Los valores ingresados no corresponden a un triangulo')
disp(a),disp(b),disp(c)
elseif c>=(a+b)
disp('Los valores ingresados no corresponden a un triangulo')
disp(a),disp(b),disp(c)
else
disp('Los valores ingresados corresponden a un triangulo')
disp(a),disp(b),disp(c)
end
MATLAB Operadores
EJERCICIO 2
%Ejercicio 3 - Clase 1
%Leer A, B y C y ordenarlas en forma ascendente usando como auxiliar
%el campo D, suponiendo que se desconocen los contenidos de A, B, y C.
%Imprimir las variable ordenadas.
clear
clc
disp(' ==== Ordenamiento de datos ==== ');

a=input('Ingrese el Primer Numero: ')
b=input('Ingrese el Segundo Numero: ')
c=input('Ingrese el Tercer Numero: ')
if a>b
d=a
a=b
b=d
end
if b>c
d=b
b=c
c=d
end
if a>b
d=a
a=b
b=d
end
disp(' ==== Ordenamiento de datos en forma ascendente ==== ');
disp(a), disp(b), disp(c)
MATLAB Operadores
EJERCICIO 3
%Ejercicio 4 - Clase 2
%Disear un algoritmo que escriba los nombres de los das de la semana
%en funcin del valor da en nmeros. Introducida por teclado,
%que representa su posicin dentro de la semana (da=1-Domingo, da=2-Lunes,
%da=3-Martes, etc.)
clear
clc
disp(' ==== Da de la Semana ==== ');

a=input('Ingrese el Da de la Semana: ')
if a>=1
if a<=7
switch a
case 1, disp(' Domingo')
case 2, disp(' Lunes')
case 3, disp(' Martes')
case 4, disp(' Miercoles')
case 5, disp(' Jueves')
case 6, disp(' Viernes')
case 7, disp('Sabado')
end
else
disp('El dia debe ser menor o igual a 7')
end
else
disp('El dia debe ser mayor o igual a 1')
end
MATLAB Operadores
EJERCICIO 4
%Ejercicio 5 - Clase 2
%Leer un nmero e indicar si es par o impar e imprimir
el numero con su
%respectiva caracterstica
clear
clc
disp(' ==== Nmero par e impar ==== ');

a=input('Ingrese el Nmero: ')

if(mod(a,2) ~= 0)
fprintf('Este nmero es Impar\n')
else
fprintf('Este numero es Par\n')
end
MATLAB Operadores
EJERCICIO 5
MATLAB TAREAS
Ejercicio N - 6
Escribir un pseudocdigo que imprima los nmeros impares hasta el 100 y que imprima
cuantos impares hay.

Ejercicio N - 7
Construir un algoritmo que permita obtener el factorial de un nmero dado. El factorial
de un nmero es el resultado de multiplicar dicho nmero por los valores inferiores al
mismo hasta la unidad. El factorial de 0 es igual a 1.

Ejercicio N - 8
Leer dos valores A y B, hacer un algoritmo que permita:
1. Si A es mayor a 0 y b es menor que a, hacer R=A*B por sumas sucesivas
2. Si B es mayor a 0 y menor igual a A verificar que A sea mltiplo de B por restas
sucesivas

Vous aimerez peut-être aussi