Академический Документы
Профессиональный Документы
Культура Документы
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Contenido
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Que es Matlab?
Matlab (Matrix laboratory): sistema interactivo de
programaci
on para realizar c
alculos numericos con vectores y matrices.
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Que es Matlab?
Incluye una colecci
on de algoritmos y funciones internas (built-in functions) asi como libreras espcializadas (toolboxes)
Matlab est
a disponible para Windows, Macintosh
y Linux.
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Barra de herramientas
Proporciona una serie de men
us desplegables para ejectutar tareas
Permite crear programas, guardar y/o cargar sesi
on de trabajo, etc.
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Editor
Permite editar y guardar comandos de Matlab (scripts)
Los programas (scripts o functions) son archivos .m
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Editor
Los programas (scripts o functions) se invocan desde la consola o
se ejecutan por medio del men
u Run
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Sesi
on de trabajo
Guarda la sesi
on de trabajo (archivo .mat)
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Sesi
on de trabajo
Carga sesi
on de trabajo previamente guardada (archivo .mat)
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
*
/
\
+
rem
Operaci
on
Potencia
Multiplicaci
on
Divisi
on (a derecha)
Divisi
on (a izquierda)
Suma
Resta
M
odulo (residuo)
Ejemplo
23
7*3
10/4
9\56
3+4
8-6
rem(11, 4)
Resultado
8
21
2.5000
8
7
2
3
>>
3/4
ans =
0.7500
>>
4+6/2+3
ans =
10
>> 36(1/2)
ans =
6
>>
6/3*(3-1)
ans =
4
>>
(4+6)/(2+3)
ans =
2
>>
>>
6/(3*(3-1))
ans =
1
>>
rem(17,3)
ans =
2
>>
-1+2*32
ans =
17
>>
361/2
ans =
18
>>
>>
00
ans =
1
1/0
ans =
Inf
0/0
ans =
NaN
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Operaci
on
Ejemplo
Resultado
==
=
<
>
<=
>=
Igual
Diferente de
Menor que
Mayor que
Menor o igual que
Mayor o igual que
4 == 5
2 = 3
10 < 4
5>-4
7<=7
3.5 >= 10
0
1
0
1
1
0
>>
1+2>7-3
ans =
0
>>
>>
2*3<7
ans =
1
>>
>>
2==3*8/12
ans =
1
>>
>>
>>
5/3>=11/7
ans =
1
2(2/3)<3(3/4)
ans =
1
3>2>1
ans =
1
2==2<4
ans =
1
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
0 es false
1 es true
2 es true, . . .
n 6= 0 es true
A
1
1
0
0
B
1
0
1
0
0
0
1
1
0
1
0
1
&
|
A && B
1
0
0
0
A || B
1
1
1
0
Operaci
on
y
o
negaci
on
para vectores
para vectores
Ejemplo
Resultado
2 && 3
true
3 || 5
true
7
false
m
as adelante. . .
m
as adelante. . .
Operador
()
*, /, rem(,)
==, !=, <, >, <=, >=
!
&
|
Jerarqu
a
(mayor)
(menor)
>>
0&&1||1
ans =
1
>>
3>2&&2>1
ans =
1
>> 5*4>4&&0<3
ans =
1
0&&(1||1)
ans =
0
>>
2==2&&2<4
ans =
1
>> 2(3&&0/5)>rem(45,6)
ans =
0
>>
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Variables en Matlab
Variables: expresiones (identificadores) asociados a datos almacenados
en un sistema de memoria
Comando para asignar un valor a una variable: =
>>
base = 3
base =
3
>>
>>
alt = 4
alt =
4
>>
>>
area = base*alt
area =
12
>>
perim = 2*base+2*alt
perim =
14
>>
>>
cadena
cadena =
hola
a = 2*a
a =
6
area == 2*a
ans =
1
(1+1/n) n
ans =
2.7048
>>
>>
cadena = hola; a = 3;
n = 100;
Fundamentos
Variables y formatos
Programaci
on b
asica
Formato
short
long
short e
long e
short g
long g
punto
punto
punto
punto
punto
punto
b=1/7
b =
0.1429
>>
format long
b
b =
0.142857142857143
fijo, 5 dgitos
fijo, 15 dgitos
flotante, 5 dgitos
flotante, 15 dgitos
fijo o flotante, 5 dgitos
fijo o flotante, 15 dgitos
3.1416
3.14159265358979
3.1416e+000
3.141592653589793e+000
3.1416
3.14159265358979
Para todo n
umero real n,
5
4
n
=n
4
5
>>
>>
format
b
b =
0.1429
>>
>>
n=2; 1.25*(n*0.8)-n
ans =
0
>>
n=3; 1.25*(n*0.8)-n
ans =
4.4409e-16
>>
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Uso
ans
pi
exp(1)
io
j
eps
Inf
NaN
Almacena el u
ltimo resultado
Almacena el valor de = 3.1415 . . .
Almacena el valor de e = 2.7183 . . .
Unidad imaginaria
1
Epsilon de la m
aquina (menor n
umero tal que 1+eps > 1)
Infinito
Resultado no n
umerico (Not a Number)
pi
ans =
3.1416
>>
>>
format long
pi
ans =
3.141592653589793
i
ans =
0.0000 + 1.0000i
>>
eps
ans =
2.220446049250313e-16
>>
>>
>>
exp(1)
ans =
2.718281828459046
>>
>>
Inf+Inf
ans =
Inf
Inf-Inf
ans =
NaN
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Entorno de trabajo
Variables utilizadas en una sesi
on de trabajo (who, whos)
Historial de o
rdenes ejecutadas (, )
>> who
>> whos
Name
Size
Bytes
Class
ans
area
b
base
cadena
n
a
alt
ans
area
b
base
n
perim
perim
alt
ans
area
base
perim
1x1
1x1
1x1
1x1
1x1
1x1
1x1
1x1
8
8
8
8
8
8
8
8
double
double
double
double
double
double
double
double
Attributes
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Uso
abs(x)
sqrt(x)
exp(x)
log(x)
log(x,b)
factorial(n)
sin(x)
cos(x)
tan(x)
asin(x)
acos(x)
atan(x)
>>
abs(-6)
ans =
6
>>
cos(0)
ans =
1
>
factorial(5)
ans =
120
>>
exp(log(15))
ans =
15
> cos(4)2+sin(4)2
ans =
1
>>
4*atan(1)
ans =
3.1416
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Ayuda en Matlab
Comando
Uso
help comando
helpwin
help elfun
help general
demo
Muestra informaci
on de comando
Abre ventana de ayuda
Muestra informaci
on de las funciones elementales
Muestra informaci
on general
Muestra ejemplos y demostraciones en Matlab
Sine.
Sine of argument in degrees.
Hyperbolic sine.
Inverse sine.
Inverse sine, result in degrees.
Inverse hyperbolic sine.
Cosine.
Cosine of argument in degrees.
Hyperbolic cosine.
Inverse cosine.
Inverse cosine, result in degrees.
Inverse hyperbolic cosine.
Tangent.
Tangent of argument in degrees.
Hyperbolic tangent.
.
.
.
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Salida de datos
Formato
Entero
d, i
Punto fijo
f, g
disp(texto)
Punto flotante
Caracter
Cadena de caracteres
disp(hola mundo!)
hola mundo!
>>
>>
>>
m=3;
disp(m)
3
>>
pulg=2.54; cent=6.4516;
Fundamentos
Variables y formatos
Programaci
on b
asica
Entradas de datos
input(texto)
input(texto, s)
>> palabra
ans =
casa
>> letras
letras =
4
>>
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Scripts
Archivos de texto plano sin formato, con extensi
on .m
Est
an formados por comandos de Matlab
Se editan con cualquier editor de texto (usaremos el de Matlab)
Referencias
Fundamentos
Variables y formatos
Ejecutando scripts
hola.m
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Ejemplos de scripts
Ejemplo 3.1 (Promedio de dos n
umeros)
Realice un programa (script) en Matlab que calcule el promedio de dos
datos enteros A y B.
Soluci
on
promedio.m
%g \n, A, B, PROM);
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Ejemplos de scripts
rectangulo
Ingrese la base: 2
Ingrese la altura: 3
El perimetro es 10 y el area es 6
>>
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Funciones en Matlab
Funciones: scripts que tienen una sintaxis predefinida
Programas que resultan complejos por medio de scripts, se simplifican
por medio de funciones
Las funciones se deben cargar en el workspace
Las funciones se invocan desde la consola o desde un script
Sintaxis de una funci
on en Matlab
function [argumentos salida] = nombre(arg 1, arg 2, ...)
sentencia 1
sentencia 2
sentencia 3
.
.
.
[argumentos salida] =
end
Fundamentos
Variables y formatos
function y = cuadrado(x)
% Calcula el cuadrado de un numero
y = x2;
end
cuadrado
Error using cuadrado (line 3)
Not enough input arguments.
>>
cuadrado(2)
ans =
4
>>
cuadrado(-3)
ans =
9
>>
Programaci
on b
asica
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
function z = area(x,y)
rectangulofun.m
% Calcula el area de un
% cuadrado de lados x e y
z = x*y
p = perim(base,altura);
a = area(base,altura);
end
function z = perim(x,y)
% Calcula el perimetro de
% cuadrado de lados x e y
z = 2*(x+y);
end
rectangulofun
Ingrese la base: 3
Ingrese la altura: 5
El perimetro es 16 y el area es 15
>>
Fundamentos
Variables y formatos
Programaci
on b
asica
Bibliografa I
S. Attaway
Matlab: A Practical Introduction to Programming and Problem
Solving
Butterworth-Heinemann, 2011
J.W. Brown, D.J. Murdoch
A First Course in Statistical Programming With R
Cambridge University Press, 1th edition , 2008
D. Burton
Elementary Number Theory
McGraw Hill Higher Education, 5th edition, 2002
O. Cair
o
Metodologa de la programaci
on
Segunda edici
on. Alfaomega Grupo Editor, S.A., 2005
M.A. Criado
Programaci
on en lenguajes estructurados
Alfaomega Grupo Editor, S.A. de C.V. Primera Edici
on, 2006
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Bibliografa II
H.P. Langtangen
A Primer on Scientific Programming with Python
Springer, 2011
O. Jones, R. Maillardet, A. Robinson
Introduction to Scientific Programming and Simulation Using R
Chapman and Hall/CRC; 1 edition, 2009
J. Kiusalaas
Numerical Methods in Engineering with Matlab
Cambridge University Press, 2 edition, 2009
D.E. Knuth
The Art of Computer Programming
Volume 1, Fundamental Algorithms
Addison Wesley Longman, 1997
S. Lipschutz
Schaums Outline of Essential Computer Mathematics
McGraw-Hill, 1th edition, 1982
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Bibliografa III
Referencias
Fundamentos
Variables y formatos
Programaci
on b
asica
Referencias
Bibliografa IV
R. Seroul
Programming for Mathematicians
Springer, 2000
E. Scheinerman
C ++ for Mathematicians: An Introduction for Students and
Professionals
Taylor & Francis Group, LLC, 2006
A. Shen
Algorithms and Programming
Springer Undergraduate Texts in Mathematics and Technology, 2010
P. Tymann
Schaums Outline of Principles of Computer Science
McGraw-Hill, 1th edition, 2008