Facultad: FIAG
Escuela: ESGE
Año Académico: 2014
Año de estudios: Segundo
Docente: MSc. Javier Lozano Marreros
Msc. Javier Lozano M.1
Curso:
Programación Aplicada
a la Ingeniería
2 MSc. Javier Lozano Marreros
3 MSc. Javier Lozano Marreros
M A T L A B
MATrix
LABoratory
Gráficas
Cálculo
numérico
computacional
SimulinkToolboxes
Lenguaje de
programación
4
PROGRAMACIÓN
EN MATLAB
PROGRAMAS QUE SE EJECUTAN EN LA
VENTANA DE COMANDOS
MSc. Javier Lozano Marreros
5
Entrada de datos
LA FUNCIÓN input
MSc. Javier Lozano Marreros
LEER
variable
variable = input(‘texto’)
variable = input(‘texto’,'s')
6 MSc. Javier Lozano Marreros
Ejemplos
N = input('ingrese el numero de terminos: ')
LEER
N, f(x)
txt=input ('Ingrese la funcion f(x):','s');
f = inline(txt);
7
Salida de datos
LA FUNCION disp
MSc. Javier Lozano Marreros
ESCRIBIR
variable
disp(variable)
8
Salida de datos
Escribe una cadena con formato.
SINTAXIS
cadena = fprintf(‘formato’,variables)
MSc. Javier Lozano Marreros
LA FUNCION fprintf
9 MSc. Javier Lozano Marreros
Ejemplos
Ejemplo1:
disp(‘Mi primer programa');
Ejemplo2:
s=sqrt(b^2-4*a*c); disp(s);
Ejemplo3:
x = [2 3 4];
texto1=‘Los valores de x son: ’;
texto2=num2str(x);
texto3=[texto1,texto2];
disp(texto3);
10 MSc. Javier Lozano Marreros
Ejemplos
Ejemplo1:
s=sqrt(b^2-4*a*c);
fprintf(' %12.8f ', s)
Ejemplo2:
fprintf('%12.8fn',pi)
Ejemplo3:
>> x=[-3:.5:3]'; y=x.^2; z=[x y];
>>fprintf('tXttYtn');
>>fprintf('%8.4f %8.4fn',z')
11
variable = expresion
MSc. Javier Lozano Marreros
INSTRUCCIÓN DE ASIGNACIÓN
d=sqrt(b^2-4*a*c);
2
4d b ac 
12
if condicion
instrucciones o grupo
de instrucciones
end
V FCondicion
Instrucciones
LA SENTENCIA if
MSc. Javier Lozano Marreros
SENTENCIAS CONDICIONALES
13
if condicion
Instrucciones1
else
Instrucciones2
end
LA SENTENCIA if else
V F
Condicion
Instrucciones1 Instrucciones2
MSc. Javier Lozano Marreros
14
LA SENTENCIA switch
switch expresión
case valor 1
Instrucciones1
case valor 2
instrucciones2
. . .
oterwise
Instrucción cuando
no cumple ningún
caso
end
valor 1
Expresion
Inst 1 Inst 2 Inst n-1 Inst n
valor 2 valor n-1 valor n
MSc. Javier Lozano Marreros
15
LA SENTENCIA for
for V=VI:I:VF
instrucciones
end
F
Instrucciones
V = VI, VF, I
MSc. Javier Lozano Marreros
SENTENCIAS REPETITIVAS
16
LA SENTENCIA while
while condicion
instrucciones
end
V
F
Condicion
Instrucciones
MSc. Javier Lozano Marreros
17
EJEMPLOS DE PROGRAMAS
EN MATLAB
MSc. Javier Lozano Marreros
18
EJEMPLO
1. Diseñar el diagrama de flujo de
programas, y escribir el programa en
MATLAB, que calcule la suma de los
n primeros términos de la sucesión
,
4!
x
,
3!
x
,
2!
x
x,1,
432
MSc. Javier Lozano Marreros
19
DIAGRAMA
DE FLUJO
i = 1, n-1
INICIO
LEER
n , x
P = 1
F = 1
S = 1
P = P*x
F = F*i
S = S + P/F
ESCRIBIR
S
FIN MSc. Javier Lozano Marreros
20
Código en MATLAB
Un script es una secuencia de instrucciones
de MATLAB guardada en un archivo con
extensión .m
MSc. Javier Lozano Marreros
Scripts
Para ejecutar el programa:
 Pulsar F5
 Escribir el nombre del archivo en el
prompt de la ventana de comandos.
21
Código para la entrada de datos
n=input(‘Ingrese n: ’);
x=input(‘Ingrese x: ’);
LEER
n , x
MSc. Javier Lozano Marreros
22
Código para el proceso de datos
P=1;
F=1;
S=1;
for i=1:n-1
P=P*x;
F=F*i;
S=S+P/F;
end
i = 1, n-1
P = 1
F = 1
S = 1
P = P*x
F = F*i
S = S + P/F
MSc. Javier Lozano Marreros
23
Código para la salida de datos
disp(S);
ESCRIBIR
S
MSc. Javier Lozano Marreros
24
CODIGO COMPLETO DEL PROGRAMA
MSc. Javier Lozano Marreros
25
Ventana de ejecución del ejemplo
MSc. Javier Lozano Marreros
PROGRAMACIÓN VISUAL
GUIDE
CON MATLAB
PROGRAMACIÓN VISUAL CON
MATLAB
MSc. Javier Lozano Marreros27
28
ACCESO AL GUIDE DEL
MATLAB
MSc. Javier Lozano Marreros
29
EL GUIDE DEL MATLAB
En el formulario se insertan los objetos que formaran
parte de la interfaz de usuario
Formulario
Objeto
MSc. Javier Lozano Marreros
Paleta de
componentes
Run
30
Inspector de
propiedades
Para cambiar las
propiedades de un objeto
primero se debe de
seleccionar el objeto
MSc. Javier Lozano Marreros
31
Objeto static text
Objeto edit text
Objeto push button
INTERFAZ DE USUARIO PARA EL EJEMPLO
VENTANA DE DISEÑO
MSc. Javier Lozano Marreros
32
PARA INGRESAR EL CODIGO EN EL
BOTON ACEPTAR
MSc. Javier Lozano Marreros
33
FUNCION DONDE SE
INGRESARA EL CÓDIGO
MSc. Javier Lozano Marreros
34
Entrada de datos
LA FUNCION get
Permite consultar y cambiar el valor de las propiedades
de un objeto.
SINTAXIS
get(handles.Nom_obj,'prop');
Donde:
Nom_obj: nombre del objeto
handles.Nom_obj: hace referencia al objeto de la interfaz
grafica de usuario.
'prop.’: es la propiedad del objeto.
MSc. Javier Lozano Marreros
35
LA FUNCION get
EJEMPLO:
texto=get(handles.edit1,'string');
Esta instrucción captura el dato que se ha ingresado en el
control Edit Text (edit1) y lo asigna a la variable texto.
x=str2double(get(handles.edit2,'string'));
Esta instrucción captura el dato que se ha ingresado
en el control Edit Text (edit2), lo convierte a numero
real y lo asigna a la variable x.
MSc. Javier Lozano Marreros
36
Salida de datos
LA FUNCION set
Muestra el valor de las propiedades de un objeto.
SINTAXIS
set(handles.Nom_obj, 'prop.',v_prop);
Donde:
Nom_obj: Es el nombre del objeto
handles.Nom_obJ: hace referencia al objeto que se
encuentra en el formulario.
'prop.‘: es la propiedad del objeto,
V_prop: es el nuevo valor de la propiedad.
MSc. Javier Lozano Marreros
37
LA FUNCION set
EJEMPLOS:
set(handles.edit5,'string',120);
Esta instrucción escribe el numero 120 en el
control Edit Text (edit5).
set(handles.edit7,'string','No existe raiz');
Esta instrucción escribe el texto “No existe raiz”
en el control Edit Text (edit7).
MSc. Javier Lozano Marreros
38
LA FUNCION sprintf
Escribe una cadena con formato. Retorna una cadena.
SINTAXIS
cadena = sprintf(‘formato’,variables)
EJEMPLO:
sprintf('x%d = %10.6f', 4, pi)
muestra el siguiente resultado: x4 = 3.141593
cad = sprintf('x%d = %10.6f', 4, pi)
El resultado x4 = 3.141593 lo guarda en la cadena cad
MSc. Javier Lozano Marreros
39
EJEMPLO
Diseñar el diagrama de flujo de
programas, y escribir el programa
en MATLAB, que calcule la suma
de los n primeros términos de la
sucesión:
,
4!
x
,
3!
x
,
2!
x
x,1,
432
MSc. Javier Lozano Marreros
40
DIAGRAMA
DE FLUJO
i = 1, n-1
INICIO
LEER
n , x
P = 1
F = 1
S = 1
P = P*x
F = F*i
S = S + P/F
ESCRIBIR
S
FIN MSc. Javier Lozano Marreros
41
Código para la entrada de datos
n=str2double(get(handles.edit1,’string’));
x=str2double(get(handles.edit2,’string’));
LEER
n , x
MSc. Javier Lozano Marreros
42
Código para el proceso de datos
P=1;
F=1;
S=1;
for i=1:n-1
P=P*x;
F=F*i;
S=S+P/F;
i = 1, n-1
P = 1
F = 1
S = 1
P = P*x
F = F*i
S = S + P/F
MSc. Javier Lozano Marreros
43
Código para la salida de datos
set(handles.edit3,'string',S);
ESCRIBIR
S
MSc. Javier Lozano Marreros
44
CODIGO COMPLETO DEL
PROGRAMA
MSc. Javier Lozano Marreros
45
Ventana de ejecución del ejemplo
MSc. Javier Lozano Marreros

Programacion 2014 matlab

  • 1.
    Facultad: FIAG Escuela: ESGE AñoAcadémico: 2014 Año de estudios: Segundo Docente: MSc. Javier Lozano Marreros Msc. Javier Lozano M.1 Curso: Programación Aplicada a la Ingeniería
  • 2.
    2 MSc. JavierLozano Marreros
  • 3.
    3 MSc. JavierLozano Marreros M A T L A B MATrix LABoratory Gráficas Cálculo numérico computacional SimulinkToolboxes Lenguaje de programación
  • 4.
    4 PROGRAMACIÓN EN MATLAB PROGRAMAS QUESE EJECUTAN EN LA VENTANA DE COMANDOS MSc. Javier Lozano Marreros
  • 5.
    5 Entrada de datos LAFUNCIÓN input MSc. Javier Lozano Marreros LEER variable variable = input(‘texto’) variable = input(‘texto’,'s')
  • 6.
    6 MSc. JavierLozano Marreros Ejemplos N = input('ingrese el numero de terminos: ') LEER N, f(x) txt=input ('Ingrese la funcion f(x):','s'); f = inline(txt);
  • 7.
    7 Salida de datos LAFUNCION disp MSc. Javier Lozano Marreros ESCRIBIR variable disp(variable)
  • 8.
    8 Salida de datos Escribeuna cadena con formato. SINTAXIS cadena = fprintf(‘formato’,variables) MSc. Javier Lozano Marreros LA FUNCION fprintf
  • 9.
    9 MSc. JavierLozano Marreros Ejemplos Ejemplo1: disp(‘Mi primer programa'); Ejemplo2: s=sqrt(b^2-4*a*c); disp(s); Ejemplo3: x = [2 3 4]; texto1=‘Los valores de x son: ’; texto2=num2str(x); texto3=[texto1,texto2]; disp(texto3);
  • 10.
    10 MSc. JavierLozano Marreros Ejemplos Ejemplo1: s=sqrt(b^2-4*a*c); fprintf(' %12.8f ', s) Ejemplo2: fprintf('%12.8fn',pi) Ejemplo3: >> x=[-3:.5:3]'; y=x.^2; z=[x y]; >>fprintf('tXttYtn'); >>fprintf('%8.4f %8.4fn',z')
  • 11.
    11 variable = expresion MSc.Javier Lozano Marreros INSTRUCCIÓN DE ASIGNACIÓN d=sqrt(b^2-4*a*c); 2 4d b ac 
  • 12.
    12 if condicion instrucciones ogrupo de instrucciones end V FCondicion Instrucciones LA SENTENCIA if MSc. Javier Lozano Marreros SENTENCIAS CONDICIONALES
  • 13.
    13 if condicion Instrucciones1 else Instrucciones2 end LA SENTENCIAif else V F Condicion Instrucciones1 Instrucciones2 MSc. Javier Lozano Marreros
  • 14.
    14 LA SENTENCIA switch switchexpresión case valor 1 Instrucciones1 case valor 2 instrucciones2 . . . oterwise Instrucción cuando no cumple ningún caso end valor 1 Expresion Inst 1 Inst 2 Inst n-1 Inst n valor 2 valor n-1 valor n MSc. Javier Lozano Marreros
  • 15.
    15 LA SENTENCIA for forV=VI:I:VF instrucciones end F Instrucciones V = VI, VF, I MSc. Javier Lozano Marreros SENTENCIAS REPETITIVAS
  • 16.
    16 LA SENTENCIA while whilecondicion instrucciones end V F Condicion Instrucciones MSc. Javier Lozano Marreros
  • 17.
    17 EJEMPLOS DE PROGRAMAS ENMATLAB MSc. Javier Lozano Marreros
  • 18.
    18 EJEMPLO 1. Diseñar eldiagrama de flujo de programas, y escribir el programa en MATLAB, que calcule la suma de los n primeros términos de la sucesión , 4! x , 3! x , 2! x x,1, 432 MSc. Javier Lozano Marreros
  • 19.
    19 DIAGRAMA DE FLUJO i =1, n-1 INICIO LEER n , x P = 1 F = 1 S = 1 P = P*x F = F*i S = S + P/F ESCRIBIR S FIN MSc. Javier Lozano Marreros
  • 20.
    20 Código en MATLAB Unscript es una secuencia de instrucciones de MATLAB guardada en un archivo con extensión .m MSc. Javier Lozano Marreros Scripts Para ejecutar el programa:  Pulsar F5  Escribir el nombre del archivo en el prompt de la ventana de comandos.
  • 21.
    21 Código para laentrada de datos n=input(‘Ingrese n: ’); x=input(‘Ingrese x: ’); LEER n , x MSc. Javier Lozano Marreros
  • 22.
    22 Código para elproceso de datos P=1; F=1; S=1; for i=1:n-1 P=P*x; F=F*i; S=S+P/F; end i = 1, n-1 P = 1 F = 1 S = 1 P = P*x F = F*i S = S + P/F MSc. Javier Lozano Marreros
  • 23.
    23 Código para lasalida de datos disp(S); ESCRIBIR S MSc. Javier Lozano Marreros
  • 24.
    24 CODIGO COMPLETO DELPROGRAMA MSc. Javier Lozano Marreros
  • 25.
    25 Ventana de ejecucióndel ejemplo MSc. Javier Lozano Marreros
  • 26.
  • 27.
    PROGRAMACIÓN VISUAL CON MATLAB MSc.Javier Lozano Marreros27
  • 28.
    28 ACCESO AL GUIDEDEL MATLAB MSc. Javier Lozano Marreros
  • 29.
    29 EL GUIDE DELMATLAB En el formulario se insertan los objetos que formaran parte de la interfaz de usuario Formulario Objeto MSc. Javier Lozano Marreros Paleta de componentes Run
  • 30.
    30 Inspector de propiedades Para cambiarlas propiedades de un objeto primero se debe de seleccionar el objeto MSc. Javier Lozano Marreros
  • 31.
    31 Objeto static text Objetoedit text Objeto push button INTERFAZ DE USUARIO PARA EL EJEMPLO VENTANA DE DISEÑO MSc. Javier Lozano Marreros
  • 32.
    32 PARA INGRESAR ELCODIGO EN EL BOTON ACEPTAR MSc. Javier Lozano Marreros
  • 33.
    33 FUNCION DONDE SE INGRESARAEL CÓDIGO MSc. Javier Lozano Marreros
  • 34.
    34 Entrada de datos LAFUNCION get Permite consultar y cambiar el valor de las propiedades de un objeto. SINTAXIS get(handles.Nom_obj,'prop'); Donde: Nom_obj: nombre del objeto handles.Nom_obj: hace referencia al objeto de la interfaz grafica de usuario. 'prop.’: es la propiedad del objeto. MSc. Javier Lozano Marreros
  • 35.
    35 LA FUNCION get EJEMPLO: texto=get(handles.edit1,'string'); Estainstrucción captura el dato que se ha ingresado en el control Edit Text (edit1) y lo asigna a la variable texto. x=str2double(get(handles.edit2,'string')); Esta instrucción captura el dato que se ha ingresado en el control Edit Text (edit2), lo convierte a numero real y lo asigna a la variable x. MSc. Javier Lozano Marreros
  • 36.
    36 Salida de datos LAFUNCION set Muestra el valor de las propiedades de un objeto. SINTAXIS set(handles.Nom_obj, 'prop.',v_prop); Donde: Nom_obj: Es el nombre del objeto handles.Nom_obJ: hace referencia al objeto que se encuentra en el formulario. 'prop.‘: es la propiedad del objeto, V_prop: es el nuevo valor de la propiedad. MSc. Javier Lozano Marreros
  • 37.
    37 LA FUNCION set EJEMPLOS: set(handles.edit5,'string',120); Estainstrucción escribe el numero 120 en el control Edit Text (edit5). set(handles.edit7,'string','No existe raiz'); Esta instrucción escribe el texto “No existe raiz” en el control Edit Text (edit7). MSc. Javier Lozano Marreros
  • 38.
    38 LA FUNCION sprintf Escribeuna cadena con formato. Retorna una cadena. SINTAXIS cadena = sprintf(‘formato’,variables) EJEMPLO: sprintf('x%d = %10.6f', 4, pi) muestra el siguiente resultado: x4 = 3.141593 cad = sprintf('x%d = %10.6f', 4, pi) El resultado x4 = 3.141593 lo guarda en la cadena cad MSc. Javier Lozano Marreros
  • 39.
    39 EJEMPLO Diseñar el diagramade flujo de programas, y escribir el programa en MATLAB, que calcule la suma de los n primeros términos de la sucesión: , 4! x , 3! x , 2! x x,1, 432 MSc. Javier Lozano Marreros
  • 40.
    40 DIAGRAMA DE FLUJO i =1, n-1 INICIO LEER n , x P = 1 F = 1 S = 1 P = P*x F = F*i S = S + P/F ESCRIBIR S FIN MSc. Javier Lozano Marreros
  • 41.
    41 Código para laentrada de datos n=str2double(get(handles.edit1,’string’)); x=str2double(get(handles.edit2,’string’)); LEER n , x MSc. Javier Lozano Marreros
  • 42.
    42 Código para elproceso de datos P=1; F=1; S=1; for i=1:n-1 P=P*x; F=F*i; S=S+P/F; i = 1, n-1 P = 1 F = 1 S = 1 P = P*x F = F*i S = S + P/F MSc. Javier Lozano Marreros
  • 43.
    43 Código para lasalida de datos set(handles.edit3,'string',S); ESCRIBIR S MSc. Javier Lozano Marreros
  • 44.
  • 45.
    45 Ventana de ejecucióndel ejemplo MSc. Javier Lozano Marreros