You are on page 1of 26

www.monografias.

com
MATLAB: Conceptos Bsicos y Programacin
Por
Luis Rodrguez Ojeda (lrodrig@espol.edu.ec)
! O"jeti#o
$! Metodo%oga
&! 'ntroduccin
(! )na primera mirada a MATLAB
*! C%cu%o num+rico
,! -aria"%es
.! -ectores y Matrices
/! Manejo sim"%ico
0! 1ra2icacin
3! Programacin con MATLAB
! 4unciones en MATLAB
$! Manejo de arc5i#os en MATLAB
&! 'nteraccin con otros entornos
(! Bi"%iogra2a
O"jeti#o
Proporcionar a los interesados los conocimientos bsicos para usar el entorno de MATLAB y las
facilidades para su programacin.
Metodo%oga
Mediante e!plicaciones basadas en los e"emplos incluidos en este manual# el interesado puede ad$uirir
en forma progresi%a y autnoma los conocimientos bsicos para utili&ar MATLAB.
Para progresar rpidamente# puede abrir dos %entanas en la pantalla de su computador# una con el
programa MATLAB y otra con este manual# entonces puede copiar cada e"emplo del manual y pegarlo
en la %entana de MATLAB para probarlo.
'ntroduccin
MATLAB (Matri! Laboratory) es un programa interacti%o de uso general en 'iencias e (ngenier)a
La interaccin se reali&a mediante instrucciones (comandos)# y tambi*n mediante funciones y programas
(scripts). Los ob"etos bsicos con los cuales opera MATLAB son matrices. La especificacin y asignacin
de cada %ariable la reali&a MATLAB en forma dinmica y eficiente# por lo $ue no son necesarias las
declaraciones de %ariables de algunos lengua"es de computacin con%encionales.
Caractersticas de MATLAB
'lculo num*rico rpido y con alta precisin
Mane"o simblico
+raficacin y %isuali&acin a%an&ada
Programacin mediante un lengua"e de alto ni%el
Programacin estructurada y orientada a ob"etos
,oporte bsico para dise-o de interfa& grfica
.!tensa biblioteca de funciones
Aplicaciones especiali&adas para algunas ramas
de ciencias e ingenier)a (toolbo!es)
Operacin
,imple y eficiente
(nteracti%o
,istema de ayuda en l)nea
(nteraccin con otros entornos
)na primera mirada a MATLAB
Cargue e% programa MATLAB en su computador.
.l entorno de MATLAB est organi&ado mediante %entanas
Command 6indo7: es la %entana de comandos para e"ecucin de instrucciones
Command 8istory: es el registro de los comandos $ue /an sido ingresados.
6or9space: contiene la descripcin de las %ariables usadas en cada sesin.
(nicialmente# se sugiere de"ar acti%a 0nicamente la %entana de comandos# cerrando las otras %entanas
con el botn :!
Para restaurarlas use la opcin #ie7 de la barra de /erramientas de MATLAB.
Los ejemp%os de este manua% de"e pro"ar%os en %a #entana de comandos
.l s)mbolo ;; indica $ue el programa est listo para recibir sus instrucciones.
.scriba cada e"emplo y presione la tecla de ingreso para finali&ar.
MATLAB muestra el resultado inmediatamente# o un mensa"e si /ubo alg0n error.
Al final de cada e"emplo /emos incluido con letra a&ul una bre%e e!plicacin.
Por supuesto# usted no tiene $ue escribir en el computador estas e!plicaciones.
;; e:p<$=>& calcule y muestre inmediatamente el resultado
ans 1
2.3456 respuesta mostrada por Matlab# ans pro%iene de answer
;; :?e:p<$=>&@ calcule y asigne el resultado a la %ariable !
;; : escriba la %ariable para conocer su contenido
! 1
2.3456 respuesta mostrada por MATLAB
;; :?e:p<$=>& al omitir @ el resultado se muestra inmediatamente
! 1
2.3456 respuesta mostrada por MATLAB
;; y?$A:B puede usar el contenido de las %ariables
y 1
7.8246 respuesta mostrada por MATLAB
;; :?:B puede modificar el contenido de las %ariables
! 1
5.3456 respuesta mostrada por MATLAB
Puede reuti%izar comandos con %as tec%as de% cursor ! Pru+"e%o!
;; :?e:p<$=>&@ y?$A:BC z?&A: Puede escribir y e"ecutar %arios
comandos en una misma l)nea
y 1
7.8246 respuestas mostradas por MATLAB
& 1
9.5:8;
D% sistema de ayuda de MATLAB
<frece una descripcin detallada del uso de cada comando.
;; 5e%p despliega temas de ayuda
;; 5e%p ops despliega comandos de un tema. .". lista de operadores
;; 5e%p e:p uso de un comando espec)fico. .". funcin e!ponencial
Adicionalmente# presionando el )cono 8e%p usted puede entrar al sistema de ayuda de MATLAB
organi&ado por contenido# )ndice# b0s$ueda y demostraciones.
A%gunos ejemp%os para apreciar e% poder de MATLAB
= =esuel%a el sistema:
$: B &y ? (
*: E $y ? ,
;; a?F$C &@ *C G$H@ ingrese la matri& de coeficientes
;; "?F(@ ,H@ ingrese el %ector columna de constantes
;; :?in#<a=A"@ obtenga la solucin con la funcin para in%ertir
;; : muestre el %ector solucin
$= +rafi$ue la funcin 2<:=?sen<:= e
:
en el inter%alo 3 :
;; ezp%ot<Isin<:=Ae:p<:=IC 3C pi=@ escriba la funcin entre comillas simples
;; grid on@ muestre cuadr)culas en el grfico
&= =esuel%a la ecuacin c0bica *:
&
B $:
$
G &: B ? 3@
;; a?F*C $C G&C H@ ingrese los coeficientes de la ecuacin
;; :?roots<a= obtenga y muestre las ra)ces de la ecuacin
(= <btenga la solucin de la ecuacin diferencial ordinaria: yJG:Gy ? 3C y<3=?
;; y?dso%#e<IKyG:Gy?3ICIy<3=?IC I:I=@ defina la ecuacin# condicin y %ariable
;; y muestre la solucin anal)tica obtenida
;; ezp%ot<yC 3C $=@ grafi$ue la solucin para 6 ! 2
;; grid on muestre cuadr)culas
*= (ntegre la funcin 2<:= ? : sen<:=
;; 2?int<I:Asin<:=I= obtenga el resultado anal)tico
;; s?int<I:Asin<:=IC3Cpi= integre entre 6 y
,= Mane"o simblico de e!presiones
;; syms : defina : con tipo simblico
;; y?:L&G/ una e!presin con :
;; t?2actor<y= factorar la espresin asignada a y
;; e?tay%or<e:p<:=C *=@ e!pandir e
:
con 7 t*rminos de la serie de Taylor
Mm"o%os especia%es Nue usa MATLAB
F H para definir %ectores y matrices
< = para definir precedencia en e!presiones y para sub)ndices
C para separar elementos de un %ector use comas o espacios
@ para separar filas y para e%itar mostrar contenido de %ariables
O para iniciar un comentario (programas y funciones)
!!! para continuar un comando en la siguiente l)nea
CPLC)LO Q)MRR'CO
4ormatos de e:5i"icin de nSmeros en %a panta%%a
;; 2ormat %ong muestra ;3 decimales
>> !1e!p(2) un e"emplo para %isuali&ar
;; 2ormat "an9 2 decimales
>> !
;; 2ormat rat notacin racional (fracciones)
>> !
;; 2ormat s5ort e notacin cient)fica
>> !
;; 2ormat %ong e notacin cient)fica con ;3 decimales
>> !
;; 2ormat B muestra signos ?# # @
>> !
;; 2ormat s5ort 3 decimales (MATLAB lo usa por omisin)
>> !
;; 2ormat compact suprime l)neas adicionales en la salida
>> !
;; 2ormat %oose inserta l)neas en blanco en la salida(recomendado)
>> !
;; 2ormat 5e: formato /e!adecimal
>> !
;; #pa<sNrt<$=C 33= %ariable precision arit/metic
(muestra la ra)& cuadrada de 2 con ;66 d)gitos
;; 2ormat s5ort regrese al formato normal de MATLAB
Operadores aritm+ticos
B G A > T L < = L se usa para potenciacin
> es di%isin a la derec/a
T es di%isin a la i&$uierda
;; 5e%p ops liste los operadores y caracteres especiales
4unciones matemticas
e!p# log# s$rt# sin# cos# tan# .....
;; 5e%p e%2un liste las funciones matemticas elementales
PractiNue con e:presiones aritm+ticas
;; :?sin<&=B&Ae:p<$=
Operadores re%aciona%es y %gicos
U U? ; ;? ?? V? W X Vlos tres 0ltimos corresponden a:
?? representa al s)mbolo ?
V? representa al s)mbolo
PractiNue con operadores re%aciona%es y %gicos
;; t?sin<$= U 3!/ W %og<$= ; 3!*el resultado es un %alor lgico (6 o ;)
Mm"o%os num+ricos especia%es
>> 2A6
'n2 es el s)mbolo
>> 6A6
QaQ significa BCot A CumberD (%alor indeterminado)
>> pi contiene la constante
>> eps es la precisin del tipo real en MATLAB
>> rea%min el menor n0mero real en MATLAB
>> rea%ma: el mayor n0mero real en MATLAB
>> i representa al s)mbolo comple"o G
PractiNue con nSmeros comp%ejos
;; :?&B$i asigne un n0mero comple"o
;; t?$A: B & G *i operacin con n0meros comple"os
;; y?e:p<:= el resultado tambi*n es comple"o
;; y?%og<G$= el referencial de MATLAB son los comple"os
4unciones adiciona%es para nSmeros comp%ejos
con"# real# imag# abs# angle# comple!
;; z?&B$i@
;; t?conj<z= obtenga el con"ugado
-aria"%es
Co re$uieren ser declaradas
,u tipo depende del %alor asignado
Pueden ser redefinidas
,ensible al tipo de letra (may0sculas o min0sculas)
ans es la %ariable por omisin pro%ista por MATLAB
Matlab reali&a la asignacin de memoria a %ariables durante la e"ecucin.
>> !15 ! es de tipo real
>> !1Imensa"eI ! es de tipo literal (use comillas simples)
>> syms ! ! es un s)mbolo
>> !1E2 9 3F ! es un %ector
>> !12?5i ! es de tipo comple"o
>> ! muestre el contenido actual de la %ariable
>> 75os ! muestre el tipo actual de la %ariable
>> disp(!) muestre solamente el contenido
>> !1input(IGdatoHI)I ingrese un %alor para una %ariable desde el teclado
>> e!p(!)A5
>> ans la %ariable ans contiene el 0ltimo resultado
>> y12Jans la puede usar
A%gunos comandos de% Mistema Operati#o
;; 5e%p genera% lista de comandos
;; 75o lista las %ariables en uso
;; 75os lista las %ariables en uso y su descripcin
c%ear borra %ariables.
;; c%ear a " c e"emplo
;; c%c despe"a la %entana de comandos
;; p7d muestra cual es el directorio actual

cd cambia la ruta del directorio actual
;; cd c:Tmat%a"T7or9 e"emplo
;; dir lista el contenido del directorio actual
sa#e almacena las %ariables en un arc/i%o !mat
;; sa#e prue"a e"emplo
%oad carga %ariables y su contenido
;; %oad prue"a e"emplo
de%ete elimina arc/i%o
;; de%ete prue"a!mat e"emplo
;; Nuit para terminar la sesin con MATLAB (no lo digite)
Comandos especia%es
;; date fec/a
;; c%oc9 fec/a /ora# %ea su uso con /elp.
>> format rat para %isuali&ar la fec/a con mas claridad
>> clocK
>> format s/ort %uel%a al formato normal
Cadenas de caracteres
>> !1LMatematicaLI asignacin de una cadena (use comillas simples)
>> !(3) mane"o de un carcter de la cadena# use un indice
Dn MATLAB %os ndices se escri"en entre
par+ntesis y son numerados desde
>> t1!(2:7)I mane"o de una subcadena# useM <inicio: 2ina%=
>> n1%engt5(!) longitud de la cadena
>> c1strcat(!C t) concatenacin de cadenas
>> /elp str2un liste las funciones para cadenas
-ectores y Matrices
>> !1E5# @;# 3# 9# @2F asignacin directa de un %ector fila
>> !1E5 @; 3 9 @2F puede separar con comas o con espacios
>> !(2)17 mane"o de un componente del %ector.
Dn MATLAB %os ndices se escri"en entre
par+ntesis y son numerados desde
>> y1!(2: 3) para asignar parte de un %ector use <inicio: 2ina%=
>> t1E5@ G;@ 3@ 7F para asignar un %ector columna use @
>> t1!I para obtener la transpuesta de un %ector use I
:I es la transpuesta del %ector :
>> y1E5# !# @4# 9F puede asignar un %ector usando otro %ector
>> y1E2:;:;6F puede asignar un %ector mediante una secuencia
Dn MATLAB %as secuencias se escri"en:
#a%or inicia% : incremento : #a%or 2ina%
si e% incremento es puede omitir%o
>> y1E2C 7C 3C !!! Para continuar en la siguiente l)nea use !!!
9C @5F escriba la continuacin de la l)nea anterior
>> !1E5# 7# 2# 6F
>> y12J! puede reali&ar operaciones escalares
>> y1e!p(!) o crear %ectores con funciones
>> a1E4 5 @ 7 ;F asignacin directa de una matri& 2!2
separe e%ementos con espacios o comas
separe 2i%as con punto y coma
>> a(2C;) mane"o de los componentes de una matri& con )ndices
numerados desde ;M <2i%aC co%umna=
>> a1E2C @5@ 7C ;@ 6C 9F una matri& 5!2
>> !1E9# 5F
>> a1E!@ !F una matri& 2!2
>> b1E7C 4F
>> c1Ea@ bF c es una matri& aumentada 5!2
>> d1EaC bIF c es una matri& aumentada 2!5
>> !1c(;C :) asigne a : la primera fila de c
>> !1c(: C;) asigne a : la primera columna de c
>> c(:C2)1E F elimine la segunda columna de c
Matrices especia%es
>> a1ones(7) matri& 7!7 iniciada con unos
>> a1ones(5#7) matri& 5!7 iniciada con unos
>> a1zeros(3#7) matri& 3!7 iniciada con ceros
>> a1eye(7) matri& identidad 7!7
>> a1magic(3) cuadrado mgico 3!3
>> a15i%"(7) matri& de Nilbert/ 7!7
>> !1E2# 7# 5# 9FI
>> a1#ander(!) matri& de Oandermonde 3!3 usando un %ector
>> a1F H matri& nula
1eneracin de nSmeros a%eatorios
>> !1rand genera un n0mero aleatorio entre 6 y ;
>> a1rand(7) genera una matri& 7!7 con n0meros aleatorios
>> b1rand(3#7) genera una matri& 3!7 con n0meros aleatorios
>> d1fi!(randJ;6)?; transfomacin para obtener un entero aleatorio
entre ; y ;6
)na matriz puede componerse con otras matrices
>> a1rand(5)I matri& 5!5 con n0meros aleatorios
>> b1E7 5 8FI %ector de tres componentes
>> e1diag(b)I matri& 5!5 con b en la diagonal
>> c1eye(5)I matri& identidad 5!5
>> d1&eros(5)I matri& con ceros 5!5
>> t1Ea e@ c dF matri& compuesta 8!8
Dditor de matrices
.n la %entana 7or9space puede acti%ar el editor de arreglos# similar a una
/o"a electrnica# con el cual puede modificar con facilidad las dimensiones y
el contenido de %ectores y matrices.
D%ementos de #ectores y matrices pueden manejarse con otro #ector o matriz
>> !1E : 9 8 7 4FI
>> p1E2 3 ;FI %ector para direccionar al %ector :
>> t1:<p= t contiene los elementos 2# 3 y.; del %ector :
>> a1E3 9 5@ 7 9 :@ 4 6 8FI
>> p1E; 5FI %ector para direccionar las filas de la matri& a
>> $1E2 5FI %ector para direccionar las columnas de la matri& a
>> t1a<pC N= t contiene las filas ; y 5# columnas 2 y 5 de a
Operaciones con matrices
>> a1E5C 2@ ;C 3FI
>> b1E:C 4@ 7C 9FI
>> c1aI transpuesta de a
>> c12Ja producto de un escalar por matri&
>> c1a?b suma de matrices
>> c1aJb producto de matrices
>> c1a!Jb producto elemento por elemento de matrices
para operar e%emento a e%emento use un punto
antes de% operador
>> c1aP2 matri& al cuadrado# e$ui%ale aM aAa
>> c1a!P2 cada e%emento de la matri& a# ele%ar al cuadrado
>> c1a??b compare igualdad entre matrices (de igual tama-o)
el resultado es una matriz "inaria (ceros y unos)
>> c1aV?b compare si dos matrices no son iguales
el resultado es una matriz "inaria (ceros y unos)
>> c1a;5 compare si cada elemento de a es mayor a 5
el resultado es una matriz "inaria (ceros y unos)
4unciones para matrices
>> !1E@2# 6# 4# 7FI un %ector para los e"emplos
>> a1E;# 2# 5@ 3# 7# 4@9# :# 8FI una matri& para los e"emplos
>> n1%engt5(!) longitud del %ector :
>> En#mF1size(a) tama-o de la matri& aM el resultado es un %ector
>> n n0mero de filasM 5
>> m n0mero de columnasM 5
>> e:ist(IcI) c/e$uea si la %ariable e!iste
>> isempty(a) c/e$uea si un %ector o matri& est %ac)o
>> any(!) determina si el %ector contiene alg0n %alor no cero
>> any(a) igual $ue arriba# pero por columnas de la matri&
>> t12ind(!) obtiene )ndices de elementos del %ector no ceros
>> t12ind(!>5) obtiene los )ndices de cada elemento > 5
>> Ef#cF12ind(a) obtiene los )ndices de filas y columnas de la matri&
cuyos elementos son no ceros
>> t1dot(!# !) producto punto entre dos %ectores
>> K1ran9(a) rango de a
>> t1trace(a) tra&a de a
>> d1det(a) determinante de a
>> b1in#(a) in%ersa de a
>> /1norm(a# ;) norma de columna de la matri& a
>> /1norm(a# inf) norma de fila de la matri& a
>> /1norm(!# inf) norma de fila o columna del %ector :
>> c1cond(a) n0mero de condicin de la matri& a
>> t1diag(a) %ector con la diagonal de la matri& a
>> t1diag(!) matri& con : en la diagonal
>> t1rot03(a) rote a 86 grados (sentido opuesto al relo")
>> t12%ip%r(a) %oltee /ori&ontalmente la matri& a
>> t1tri%(a) obtenga la matri& triangular inferior de a
>> t1triu(a) obtenga la matri& triangular superior de a
>> b1E7CG;@ 5C 3@ 2C 9F@
>> b1res5ape(b# 2# 5) reconfigura la matri& " de 5!2 a 2!5
>> Et#sF1%u(a) descomposicin triangular de a en las matrices
>> t triangulares t y s tales $ue tAs es igual $ue a
>> s
>> tJs se obtiene la matri& a
>> t1co#(a) matri& de co%arian&a de a
>> e1eig(a) %alores propios de a
>> p1po%y(a) polinomio caracter)stico de a
>> r1roots(ans) %alores propios de a
>> /elp mat2un liste las funciones para matrices
'ngreso de puntos desde %a panta%%a con e% mouse
>> e&plot(Lsin(!)L)I e"emplo para tomar puntos desde un grfico
>> grid on
>> E!#yF1ginput(7)I ingrese 7 puntos desde la pantalla .
Presione e% "otn de% mouse para
ingresar cada punto
>> ! obser%e las abscisas
>> y y las ordenadas ingresadas
>> plot(!# y# LoL) grafi$ue los puntos ingresados
4unciones adiciona%es para manejo de datos con #ectores y matrices
>> !1E2C 7C 3F@ un %ector
>> a1E7CG;@ 5C 3@ 2C 9F@ una matri&
>> t1ma:(!) el mayor %alor del %ector :
>> %1ma!(a) el mayor %alor por columnas de la matri& a
>> t1sum(!) suma de componentes
>> %1sum(a) suma de componentes por columnas
>> t1prod(!) producto escalar
>> %1prod(a) producto escalar por columnas
>> t1cumsum(!) suma acumulada
>> %1cumsum(a) suma acumulada por columnas
>> t1cumprod(!) producto acumulado
>> %1cumprod(a)
>> t1mean(!) media aritm*tica
>> %1mean(a)
>> t1median(!) mediana
>> %1median(a)
>> t1std(!) des%iacin estndar
>> %1std(a)
>> t1sort(!) ordenamiento ascendente
>> %1sort(a)
>> t1dsort(!) ordenamiento descendente
>> "ar(!) diagrama de barras
>> bar(a)
>> 5ist(!) /istograma
>> stairs(!) dibu"a ! mediante escalones
>> pie(!) grfico tipo pastel
>> pie&(!) pastel en relie%e
>> %1E6#;#6F %ector para e!traer sectores del pastel
>> pie5(!#%) grfico tipo pastel con un sector separado
Po%inomios
>> a1E2C G5C 6C 7QC define el polinomio 2!
5
R 5!
2
? 7
>> y1po%y#a%(a#3) e%aluacin del polinomio con un %alor
>> !1roots(a) obtenga un %ector con ra)ces (reales y comple"as)
>> t1po%y#a%(a# !(;)) %erifi$ue una ra)&
>> p1po%y(!) producto de todas las ra)ces
>> b1E5C 3C G2F@ define el polinomio 5!
2
? 3! @ 2
>> c1con#(a#b) producto de polinomios
>> EcC rF1decon#(a#b)I di%isin de polinomios
>> c cociente
>> r residuo
>> !1E2 5 7 9 :FI abscisas de puntos (!#y)
>> y1E5!2 3!; 7!: 4!3 4!5FI ordenadas de los puntos
>> &15!2I %alor para interpolar# z puede ser un %ector
>> u1interp(!#y#&#SlinearS) resultado de la interpo%acin %inea%
>> u1sp%ine(!#y#&) interpolacin con un trazador cS"ico
>> a1po%y2it(!# y# 2)@ polinomio de mnimos cuadrados de grado 2
>> a el %ector a contiene los coeficientes
PractiNue: O"tenga y gra2iNue e% po%inomio de interpo%acinC %a recta de mnimos cuadrados y e%
trazador cS"ico para un conjunto de datos dados
;; :?F $ ( * .H@ cinco puntos (!C y) para el e"emplo
;; y?F* & , . (H@
;; p%ot<:CyCIoI= grafi$ue los datos con c)rculos
;; grid on poner cuadr)culas
;; 5o%d on superponer los siguientes grficos
;; a?po%y2it<:CyC(=@ polinomio de interpolacin# 7 puntosM grado 3
;; a coeficientes a<=:L( B a<$=:L& B a<&=:L$ B !!!
;; z?F: 3!: .H@ puntos para e%aluar el polinomio
;; p?po%y#a%<aCz=@ e%al0e el polinomio con z obtenga puntos p
;; p%ot<zCp= grafi$ue el polinomio de interpolacin
;; "?po%y2it<:CyC=@ recta de m)nimos cuadrados (grado ;)
;; " coeficientes de la rectaM "<=: B "<$=
;; t?F .H@ puntos e!tremos de la recta (abscisas)
;; N?po%y#a%<"Ct=@ obtenga las ordenadas respecti%as de la recta
;; p%ot<tCNCIrI= grafi$ue la recta en color ro"o
;; s?sp%ine<:CyCz=@ e%al0e con z el tra&ador c0bico y obtenga s
;; p%ot<zCsCIgI= grafi$ue el tra&ador c0bico con %erde
;; 5o%d o22 des/abilite la superposicin de grficos
MAQDYO M'MBZL'CO
>> syms !I definicin de %ariable tipo simblico
>> 2J!?5J! suma algebraica
>> a1E! 7@ 5J! 3FI matri& con elementos s)mbolos
>> t1in#(a) su in%ersa tambi*n contiene s)mbolos
>> t1so%#e(2J!P2?5J!@2) solucin de una ecuacin
>> f15J!P2?7J!I definicin simblica de una funcin
>> t12actor(f) factorar la e!presin
>> s1e:pand(t) e!pandirla
>> e1tay%or(e!p(!)) e!pansin con la serie de Taylor
>> %imit(sin(!)A!) obtenc)on de l)mites de funciones
>> syms yI
>> f12J!P5?5JyP2 una funcin de dos %ariables
>> g1di22(f#!) deri%ada parcial
>> u1int(f#!) integrar en !
4unciones adiciona%es con e:presiones sim"%icas
>> f1I2Jt?;II definicin de una funcin en forma literal
>> t15I
>> y1e#a%(f) e%aluacin de la funcin
>> Ea#bF 1 so%#e(IaP2 ? aJb @ b 1 5ICIaP2 @ 3Jb @ 7 1 6I)
resuel%e un sistema de dos ecuaciones no lineales
>> a1double(a) para e!presarlas en forma real
>> b1double(b)
>> f1Le!p(!)@piJ!LI
>> !1sol%e(f)
>> !1double(!) cambia la solucin simblica a real
! 1
6.775: resultados de MATLAB
;.45:7
>> !12zero(f#2) solucin de una ecuacin con un %alor inicial
! 1
;.45:7 resultado de MATLAB
>> !12zero(f#E;#2F) solucin usando un rango para la rai&
! 1
;.45:7 resultado de MATLAB
>> u1di22(f) diferenciacin
>> %1int(f) integracin anal)tica
>> r1int(f# 6# 2) integracin entre l)mites
>> g1L!Je!p(@!)LI
>> r1int(g# 6# 'n2)I integral impropia
solucin anal)tica y grfico de una .T< de primer orden
con una condicin en el inicio
>> y1dso%#e(LTy1(!@y)A!L#Ly(6)16L#L!L)
>> e&plot(y#6#2)I
>> grid on
.T< de segundo orden con condiciones
en el inicio y grfico de la solucin
>> y1dso%#e(LT2y?Ty?2Jy@!@516L#Ly(6)16#Ty(6)1;L#L!L)
>> e&plot(y#6#2)I
>> grid onI
.T< de segundo orden con condiciones
en los bordes
>> y1dso%#e(LT2y@Ty?2Jy@7J!@516L#Ly(6)16#y(;)12L#L!L)
>> e&plot(y#6#2)I
>> grid on
>> f1S2Jsin(!)Je!p(!)SI
>> E!#yF12min"nd(f#@2#2) encuentra un m)nimo local de f en : (
>> e&plot(f#@2#2)
."ercicioM .scriba directamente las instrucciones necesarias para encontrar el %alor del radio ! de un
cilindro de ;666 cc de capacidad# de tal manera $ue el %alor del rea sea el m)nimoM
Primer enfo$ueM
;) .scriba una funcin f en t*rminos del radio !
2) +rafi$ue f con e&plot. Localice el inter%alo para el m)nimo de f(!)
5) Use la funcin 2min"nd para obtener el m)nimo
!M radio# /M altura
>> f1L2JpiJ!J;666A(piJ!P2)?2JpiJ!P2LI
>> e&plot(f#6#;6)
>> grid
>> !1fminbnd(f#3#4)
! 1
7.3;85
>> area1e%al(f)
area 1
775.7:;6
,egundo enfo$ue
;) Teri%e f y obtenga la funcin a minimi&ar g.
2) +rafi$ue g con e&plot. Localice el inter%alo de la ra)& de g(!)16
5) Use la funcin 2zero para obtener la ra)&
3) Use la funcion so%#e para obtener la ra)&
!M radio# /M altura
>> g1diff(f)
g 1
@2666A!P2?3JpiJ!
>> !1f&ero(c5ar(g)#E3#4F)
! 1
7.3;85
>> !1sol%e(g)
! 1
E 7ApiJ3P(;A5)J(piP2)P(;A5)F
E @7A2ApiJ3P(;A5)J(piP2)P(;A5)?7A2JiJ5P(;A2)ApiJ3P(;A5)J(piP2)P(;A5)F
E @7A2ApiJ3P(;A5)J(piP2)P(;A5)@7A2JiJ5P(;A2)ApiJ3P(;A5)J(piP2)P(;A5)F
>> !1dou"%e(!)
! 1
7.3;85
@2.9684 ? 3.4852i
@2.9684 @ 3.4852i
4unciones especia%es para medir e2iciencia de a%goritmos
>> ticI (nicia cronmetro
>> tocI muestra el tiempo transcurrido
>> tic@ a1in#(rand(766# 766))@ toc
tiempo utili&ado en in%ertir una matri& 766!766
1RA4'CAC'ZQ
1r2ico de 2unciones de una #aria"%e
>> f1Ie!p(!)@5J!II funcin para el e"emplo (use comillas simples)
>> ezp%ot(f) funcin bsica para graficar f en E@2# 2F
>> ezp%ot(f# E6# 2F) funcin bsica para graficar f en un dominio dado
>> grid on colocar cuadr)culas en el dibu"o
>> !1E6: 6!;: 2JpiFI puntos para e%aluar alguna funcin
>> y1sin(!)I puntos de la funcin seno
>> p%ot(!#y)I funcin para graficar la funcin con l)nea cont)nua
>> plot(!#y#LoL) grfico con puntos. Puede elegirM o ! A B : GG
>> plot(!#y#LrL) cambiar a color ro"o. Puede elegir rC"CyCmCgC7C9
>> plot(!#y#LogL) grafi$ue con c)rculos %erdes.
>> grid on colocar cuadr)culas en el dibu"o
>> tit%e(Lseno de !L) incluya un t)tulo en el grfico
>> gte:t(Lseno de !L) posicione el te!to en el grfico con el mouse
>> :%a"e%(LVL) rotule el e"e /ori&ontal
>> y%a"e%(LWL) rotule el e"e %ertical
>> c1E6C 2JpiC @2C 2F defina la regin para el grfico
>> a:is(c)
>> 5o%d on superponer siguientes grficos
>> 5o%d o22 des/abilitar opcin anterior
>> c%2 borrar el grfico
>> 2igure(;) puede tener %arias figuras abiertas
cada una en una %entana rotulada con ;# 2# ...
>> su"p%ot(2#5#;) puede di%idir una figura en subgrficos.
.". en 2 filas y 5 columnas. Acti%ando el grfico ;
>> c%2<= borra el grfico ;
>> c%2 borre todos los grficos
>> !1E6:6!;:;6Q@
>> y1e!p(!)I
>> semi%og:(!#y) graficar en escalas logar)tmicas
>> semi%ogy(!#y)
>> %og%og(!#y) doble logar)tmica
>> grid on
>> a16:6.6;:2JpiI
>> r1sin(5Ja)I LrosaL de 5 p*talos
>> po%ar(a# r)I grafi$ue en coordenadas polares
1r2ico de 2unciones imp%citas y ecuaciones con dos #aria"%es
>> f1L(!@2)P2?(y@5)P2@7LI
>> e&plot(f)I +raficar la circunferencia <: G $=
$
B <y G &=
$
? *
en el dominio @2!2# @2y2
>> e&plot(f#E@;#7#6#4F) +raficar f en el dominio @;!7# 6y4
>> grid onI 'olocar cuadr)culas
>> /old onI ,uperponer el siguiente grficoM
>> g1Sy@2J(!@5)P2@5SI una parbola y?$<:G&=
$
G& en el mismo dominio
>> e&plot(g#E@;#7#6#4F)
1r2ico de 2unciones de2inidas en 2orma param+trica
>> e&plot(Lsin(t)L#Lcos(t)L#E@pi#piF)I +raficar :?:<t=C y?y<t= en Gt
>> e&plot(Lsin(5Jt)Jcos(t)L#Lsin(5Jt)Jsin(t)L#E6#piF)I Una rosa de 5 p*talos
Dditor de gr2icos
Tespu*s $ue el grfico /a sido reali&ado puede utili&ar las facilidades del editor de grficos para cambiar
las propiedades de las figurasM color# tipo# etc. Tambi*n puede reali&ar estad)sticas bsicas y a"uste de
cur%as. Adicionalmente puede insertar directamente en el grfico te!to# l)neas# flec/as# rtulos# etc.
Para /abilitar el editor de grficos seleccione el botn too%s en la barra de opciones del grfico y luego
eli"a edit p%ot. Para reali&ar estad)sticas bsicas y a"uste de cur%as# eli"a respecti%amente Kata
Mtatistics y Basic 4itting
1r2ico de 2unciones de dos #aria"%es
>> a1E; 5 2@ 7 5 9@ 3 7 2F@ una matri& 5!5
>> mes5<a)I graficar los elementos como puntos sobre el plano.
.l siguiente e"emplo es una referencia para
graficar funciones de dos %ariables
+raficar z ? :
$
E y
$
C G$:$C G&y&
>> !1@2:6!;:2@ dominio de la funcin para el e"emplo
>> y1@5:6!;:5@
>> Eu#%F1mes5grid(!#y)I u# %M matrices $L contienen cada par ordenado !#y
>> &1u!P2 R %!P2I puntos de la funcin & 1 !
2
R y
2
>> mes5(!# y# &) grfico de malla
>> contour(!# y# &) grfico de contorno
>> sur2c(!# y# &) grfico de superficie y contorno
>> sur2(!# y# &) grfico de superficie
>> :%a"e%(LVL) rotulacin de e"e :I tambi*n con y%a"e%C z%a"e%
>> tit%e(I,illa de montarI) t)tulo para el grfico
>> co%ormap<copper=@ color del grficoI tambi*n: grayC jetC pin9
>> s5ading interp@ sua%i&ado del grfico ([ tiene $ue %erlo \)
Adiciona%mente puede usar %as opciones de% editor de gr2icos para editar %a 2iguraC rotarC
cam"iar %a perspecti#aC insertar ttu%osC etc!
'nsertar e% gr2ico en un documento
,i desea insertar el grfico elaborado con MATLAB en un documento# usualmente escrito en
6ORK# puede seguir el siguiente procedimientoM
.li"a en la barra de opciones del grfico el botn 4i%e y luego la opcin D:port
.li"a una carpeta para almacenar el grfico y un nombre para el grfico.
+uarde el grfico con tipo .jpg
'opie el grfico almacenado y p*guelo en el documento# en el lugar elegido.
PRO1RAMAC'ZQ COQ MATLAB
Arc5i#os de comandos
Para crear un arc/i%o de comandos (programa# o script)# seleccione en la
barra de /erramientas de MATLAB la opcin: 4i%e Qe7 MG2i%e
o presione en el )cono respecti%o. ,e abre una %entana de edicin
.n la %entana de edicin escriba los comandos y almac*nelos en un arc/i%o con alg0n nombre.
Puede incluir comentarios con el s)mbolo O
.". .scriba en la %entana de edicin las instrucciones para graficar sen(!) entre 6 y 2
:?3:3!:$Api@
y?sin<:=@
p%ot<:Cy=@
grid on
+uarde el arc/i%o con alg0n nombre# e"emploM prue"a
Para e"ecutar el programa escriba en la %entana de comandos
;; prue"a
Para editar un arc/i%o de comandos# seleccione en la barra de /erramientas de MATLAB la
opcin: 4i%e Open o seleccione el )cono respecti%o.
.n el arc/i%o abierto en la %entana de edicin /aga los cambios y gurdelo nue%amente con el
mismo nombre.
Dstructuras de contro% de 2%ujo en MATLAB
'nstrucciones de Dntrada y Ma%ida
(ngreso de un dato desde el tecladoM %ariable1input(Xmensa"eS)I
.".
: ? input<Iingrese un dato I=@
,alida de un resultado a la pantallaM disp(%alor)
.".
:?e:p<$=@
disp<:=@
,alida de mas de un resultado a pantallaM disp(E%alor# %alor# YF)I
.".
:?$L.@
y?sNrt<pi=@
dis9<F:C yH=@
,alida de resultados formateados a pantallaM fprintf(XformatosS#%ariables)
.".
:?$L.@
y?sNrt<pi=@
2print2<IOd O2]IC:Cy=@
Puede especificar cantidad de columnas y decimalesM
.".
:?$L.@
y?sNrt<pi=@
2print2<IO*d O/!&2]IC:Cy=@
<tras especificaciones de formato puede %erlas con 5e%p 2print2
Kecisiones <instruccin i2=
i2 condicin i2 condicin
instrucciones instrucciones
end e%se
instrucciones
end
.". .scriba y almacene el siguiente programa para mostrar el mayor entre
dos datosM
a?input<Iingrese e% primer dato I=@
"?input<Iingrese e% segundo dato I=@
i2 a;"
m?a@
e%se
m?"@
end
disp<m=@
+urdelo con el nombre prue"a y 0selo desde la %entana de comandosM
;; prue"a
ingrese el primer dato 7 interaccin con MATLAB
ingrese el segundo dato :
:
Kecisiones mS%tip%es <instruccin s7itc5=
.". .scriba el siguiente programa para instrumentar la definicinM
y 1

= +
=
! otro # e
2#5#3 ! ;# 2!
; ! # 5
!
:?input<Idato I=@
s7itc5 :
case C
y?&@
case ^$C&C(_C
y?$A:B@
ot5er7ise
y?e:p<:=@
end
disp<y=@
Almac*nelo con alg0n nombre. ."emplo prue"a$
Para usarlo escriba en la %entana de comandos
;; prue"a$
Repeticin condicionada a% inicio <instruccin 75i%e=
75i%e condicin
instrucciones
end
.". ,ume los n primeros t*rminos de la serie armnicaM
n?input<Icantidad de terminos I=@
s?3@
75i%e n;3
s?sB>n@
n?nG@
end
disp<s=@
Almac*nelo con alg0n nombre. ."emplo prue"a&
Para usarlo escriba en la %entana de comandos
;; prue"a&
Repeticin condicionada a una secuencia <instruccin 2or=
2or %ariable1inicio: incremento: final
instrucciones
end
.". ,ume los n primeros t*rminos de la serie armnicaM
n?input<Icantidad de terminos I=@
s?3@
2or i?:n
s?sB>i@
end
disp<s=@
Almac*nelo con alg0n nombre. ."emplo prue"a(
Para usarlo escriba en la %entana de comandos
;; prue"a(
Puede interrumpir una repeticin <instruccin "rea9=
.". Lea n datos. 'alcule y muestre la ra)& cuadrada. Pero si entra un %alor negati%o# muestre un
mensa"e y termine
n?input<`cantidad de datos `=@
2or i?:n
:?input<`ingrese siguiente dato `=@
i2 :U3
disp<`Drror]=@
"rea9@
e%se
r?sNrt<:=@
disp<F:CrH=@
end
end
Para %er la descripcin de las estructuras del lengua"e de MATLAB# escriba
;; 5e%p %ang
4unciones en MATLAB
.n general una funcin en los lengua"es de programacin es un con"unto de instrucciones
$ue se escriben separadamente del programa y $ue reali&an alguna tarea especificada.
Los usuarios pueden definir funciones y agregarlas a las funciones propias de MATLAB.
.l mecanismo usual para trasmitir datos a las funciones es mediante una lista de %ariables
$ue se denominan parmetros. ,in embargo# a diferencia de los programas# las %ariables
$ue se usan dentro de una funcin# no estn disponibles fuera de ella# a menos $ue se use
una declaracin e!pl)cita y $ue se %er mas adelante.
Kec%aracin de una 2uncin en MATLAB
2unction #aria"%e ? nom"re <parmetros=
instrucciones
#aria"%e contendr el resultado $ue entrega la funcin
parmetros son %ariable $ue reciben los datos $ue entran a la funcin
nom"re identifica a la funcin
instrucciones se incluyen en la funcin seg0n la tarea especificada
Las funciones se escriben en la %entana de edicin de Matlab y se las almacena en alguna
carpeta. .s con%eniente $ue el nombre asignado sea igual al nombre usado en la
declaracin de la funcin.
.l uso de una funcin es similar al uso de las funciones comunes de MATLAB. .l nombre
debe coincidir con el nombre asignado# aun$ue los parmetros pueden tener nombres
diferentes# pero su uso debe ser co/erente.
.". .scriba una funcin para elegir el mayor entre dos n0meros
Abra un documento nue%o en la %entana de edicin y escribaM
2unction m ? mayor<aC "=
i2 a;"
m ? a@
e%se
m ? "@
end
m es la %ariable $ue entrega el resultado
mayor es el nombre de la funcin
aC " son los parmetros $ue ingresan los datos a la funcin
Almacene esta funcin en el disco con el nombre mayor
,uponer $ue $uiere escoger el mayor entre e

y
e
.
.scriba en la %entana de comandosM
>> a 1 e!p(pi)I
>> b 1 piPe!p(;)I
>> m 1 mayor(a# b)
25.;369 (respuesta $ue muestra MATLAB)
Los nom"res de %as #aria"%es pueden ser di2erentes:
>> ! 1 e!p(pi)I
>> y 1 piPe!p(;)I
>> t 1 mayor(!# y)
25.;369 (respuesta $ue muestra MATLAB)
.". .scriba una funcin $ue reciba un n0mero y determine si es un n0mero primo. .l
resultado $ue entrega la funcin ser ; o 6 seg0n correspondaI
2unction p ? primo< : =
c ? 3@
2or d ? : :
i2 mod<:C d= ?? 3
c ? c B @
end
end
i2 c ; $
p ? 3@
e%se
p ? @
end
+uarde la funcin en el disco con el nombre primo
Pruebe la funcin desde la %entana de comandos
>> ! 1 27I
>> p 1 primo(!)
6 (resultado $ue muestra MATLAB)
>> ! 1 35I
>> p 1 primo(!)
; (resultado $ue muestra MATLAB)
.scriba en una nue%a %entana de edicin un programa $ue use la funcin primo para
encontrar todos los n0meros primos menores a 26M
2or : ? : $3
i2 primo<:= ??
disp<:=@
end
end
Almacene su programa en el disco con el nombre prue"a
.n la %entana de comandos pruebe su programaM
>> prueba
; (resultados mostrados por MATLAB)
2
5
7
9
;;
;5
;9
;8
."ercicios.@
;) .scriba una funcin $ue reciba 5 n0meros y entregue como resultado el mayor con el
siguiente encabe&adoM
2unction m?mayor<aC"Cc=
.scriba un programa $ue lea las tres dimensiones de un blo$ue# calcule el %alor de las
diagonales de sus caras y use la funcin anterior para encontrar el %alor de la mayor
diagonal
2) .scriba una funcin $ue muestre cual es el %alor de la suma de los cubos de los primeros n
n0meros naturales con el siguiente encabe&adoM
2unction s?suma<n=
.scriba n programa $ue use la funcin suma y la funcin primo anterior para determinar si
las suma de los cubos de los 9 primeros n0meros naturales es un n0mero primo
)na 2uncin puede entregar ms de un resu%tado
Las %ariables $ue entregan los resultados deben definirse entre E F
.". .scriba una funcin $ue entregue el rea y el %olumen de un cilindro dados su radio (r)
y su altura (/)
2unction FareaC #o%H ? ci%indro<rC 5=
area ? $ApiArA5 B $ApiArL$@
#o% ? piArL$A5@
.scriba y almacene la funcin con el nombre cilindro.
Use la funcin para calcular el rea y el %olumen de una lata de cil)ndrica $ue tiene un
dimetro de ;6cm y una altura de ;2cm
.scriba en la %entana de comandosM
;; r ? *@
;; 5 ? $@
;; FaC #H ? ci%indro<rC5=@
;; a
;; #
MATLAB mostrar los resultados almacenados en a y en %
Las #aria"%es de2inidas dentro de una 2uncin son %oca%esC es decir Nue a di2erencia de %os
programasC no son #isi"%es 2uera de %a 2uncin
.". .scriba la funcinM
2unction :?2n<aC "=
c ? a B "@
: ? $Ac@
Almacene con el nombre fn y 0sela desde la %entana de comandosM
;; a ? &@
;; " ? *@
;; t ? 2n<aC "=
t ? , (resultado $ue muestra MATLAB)
;; c (intentamos conocer el %alor de c en la funcin)
aaa )nde2ined 2unction or #aria"%e IcI! (mensa"e de error de MATLAB)
'ompare con lo $ue ocurre si escribe un programa en %e& de la funcinI
a ? input<`ingrese dato `=@
" ? input<`ingrese dato `=@
c ? a B "@
: ? $Ac@
disp<:=@
Almacene con el nombre prueba y acti%e el programaM
;; prue"a
ingrese dato & (interaccin para ingreso de datos)
ingrese dato *
, (resultado $ue muestra MATLAB)
;; c
c ? / (la %ariable c puede ser utili&ada)
Ds posi"%e 5acer Nue %as #aria"%es de una 2uncin sean #isi"%es 2uera de su m"itoC
mediante %a dec%aracin g%o"a%
.". Modifi$ue la funcin 2n para $ue la %ariable c sea %isibleM
2unction :?2n<aC "=
g%o"a% c@
c ? a B "@
: ? $Ac@
Almacene con el nombre fn y use la funcinM
;; a ? &@
;; " ? *@
;; t ? 2n<aC "=
t ? , <resultado $ue muestra MATLAB)
;; c (intentamos conocer el %alor de c en la funcin)
c?/ (la %ariable c est disponible a/ora)
)na 2uncin puede no necesitar parmetros
.". .scriba una funcin $ue lea y %alide un entero entre ; y 7
2unction n?entero
:?3@
75i%e :??3
n?input<`ingrese un entero entre y * `=@
i2 n;3 W nU,
:?@
end
end
)na 2uncin puede no entregar resu%tados ni usar parmetros
.". .scriba una funcin $ue imprima un men0
2unction menS
disp<`= ingresar]=@
disp<`$= "orrar]=@
disp<`&= sa%ir]=@
para usa esta funcin escriba
;; menu
)na 2uncin puede reci"ir como parmetros #ectores o matrices!
.". .scriba una funcin $ue reciba un %ector y entregue el promedio del %alor de sus
elementos.
2unction p?prom<:=
n?%engt5<:=@
s?3@
2or i?:n
s?sB:<i=@
end
p?s>n@
Para usar esta funcin debe definir el %ector antes de llamar a la funcin.
La funcin determina la longitud del %ector con la funcin %engt5
;; :?F$ . & * ( . ,H@
;; t?prom<:=
t ? (!/*. (es el resultado $ue muestra MATLAB)
)na 2uncin puede entregar como resu%tado un #ector o una matriz
.". .scriba una funcin $ue entregue un %ector de longitud n conteniendo n0meros
aleatorios enteros con %alor entre ; y 4M
2unction d?dados<n=
2or i?:n
d<i=?2i:<randA,B=@
end
Para usar esta funcin debe en%iar un %alor para el parmetro nM
;; t?dados<*=
t ? , & ( & $ (es el %ector resultante $ue entrega MATLAB)
)na 2uncin puede reci"ir y entregar #ectores o matrices
.". .scriba una funcin $ue reciba dos %ectores A# B y entregue un tercer %ector $ue
contenga los elementos $ue estn en ambos %ectoresM
2unction C?interseccion<ACB=
n?%engt5<A=@
m?%engt5<B=@
9?@
2or i?:n
2or j?:m
i2 A<i= ?? B<j=
C<9= ? A<i=@
9 ? 9 B @
end
end
end
Para usar esta funcin debe definir los %ectores $ue entran. =ecuerde $ue pueden tener
nombres diferentes a los $ue usa la funcinM
;; A?F$ . * ( & /H@
;; B?F. & 0 3H@
;; C?interseccion<ACB=
C ? . & (.s el %ector resultante $ue entrega MATLAB)
Mi %a sa%ida de una 2uncin es antes de% 2ina%C puede usar e% comando return
.". .scriba una funcin para determinar si los elementos de un %ector estn en orden crecienteM
2unction t?orden<:=
t?3@
n?%engt5<:=@
2or i?:nG
i2 :<i= ; :<iB=
return@
end
end
t?@
)n programa puede %%amar a 2unciones
.". .scriba una funcin para eliminar espacios intermedios de una fraseM
2unction :?compactar<2=
n?%engt5<2=@
:?II@
2or i?:n
i2 2<i= V? I I
: ? strcat<:C 2<i==@
end
end
A/ora escriba un programa $ue lea una frase# use la funcin compactar para eliminar los
espacios intermedios# y luego muestre un mensa"e en caso de $ue sea sim*tricaM sus
caracteres opuestos son iguales
2?input<Iingrese una 2rase I=@
2?compactar<2=@
n?%engt5<2=@
sim?@
2or i?:n>$
i2 2<i= V? 2<nGiB=
sim?3@
end
end
i2 sim ??
disp<I%a 2rase es simetricaI=@
e%se
disp<I%a 2rase no es simetricaI=@
end
Probamos este programa suponiendo $ue lo /emos almacenado con el nombre prue"aM
;; prue"a
ingrese una 2rase Ianita %a#a %a tinaI@ (dato $ue ingresamos)
%a 2rase es simetrica (resultado de MATLAB)
)na 2uncin puede %%amarse a si misma
.stas funciones de denominan recursi%as
.". Use la siguiente definicin recursi%a para calcular el m!imo com0n di%isor entre dos
n0meros enterosM

=
>
>
=
b a # a
a b a)# @ b mcd(a#
b a )# b # b a ( mcd
) b # a ( mcd
.scriba y almacene una funcin para instrumentar esta definicinM
2unction c?mcd<aC "=
i2 a;"
c?mcd<aG"C "=@
e%se
i2 ";a
c?mcd<aC "Ga=@
e%se
c?a@
end
end
Use la funcinM
;; :?mcd<&,C (/=
Para desp%egar un mensaje de error y terminar %a ejecucin use error
.".
i2 dU3
error<I#a%or incorrectoI=@
end
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
PractiNue: 4unciones de% Mdu%o de Dstadstica
normpd2: distri"ucin de pro"a"i%idad norma%
;; :?(:3!:3@
;; p?normpd2<:C.C=@
;; p%ot<:Cp=
normcd2: Kistri"ucin de pro"a"i%idad norma% acumu%ada
Ca%cu%e %a pro"a"i%idad Nue una #aria"%e a%eatoria distri"uida norma%menteC con media 3
y des#iacin estndar $C tenga un #a%or entre !( y &!*
;; p?normcd2<&!*C 3C $= G normcd2<!(C 3C $=@
p ?
3!$30
normin#: 'n#ersa de %a distri"ucin norma% acumu%ada
Dncuentre un inter#a%o de 00O de pro"a"i%idad para una #aria"%e con distri"ucin norma%
con media $ y des#iacin estndar
;; p?F3!33* 3!00*H@
;; :?normin#<pC$C3!*=
: ?
3!.$ &!$/.0
Para c5eNuear
;; p?normcd2<&!$/.0C$C3!*=Gnormcd2<3!.$C$C3!*=
p ?
3!0033
Prueba de Niptesis
E/#p#cF1&test(!#u#sn)I
>> E/#p#cF1&test(2#2.67#6.63)
/ 1
6
p 1
6.2;;5
c 1
;.82;4 2.69:3
PractiNue: )na 2uncin Nue entrega un resu%tado ana%tico
Dscri"a y a%macene una 2uncin para o"tener e% po%inomio de interpo%acin en 2orma ana%tica con
%a 2rmu%a de Lagrange:
2unction p1Lagrange(!#y)
p16I
syms tI
n1%engt5(!)I
2or i1;Mn
L1;I
2or "1;Mn
i2 iZ1"
L1LJ(t@!("))A(!(i)@!("))I
end
end
p1p?LJy(i)I
p1simp%i2y(p)I
end
)se %a 2uncin desde %a %nea de comandos
;; :?F&C *C ,C /C 0H@
;; y?F&!*C (!.C (!0C *!$C ,!/H@
;; p?Lagrange<:Cy=
;; p%ot<:CyCIoI=C gridC 5o%d
;; ezp%ot<pC:<=C:<*==
Manejo de arc5i#os en MATLAB
D% siguiente ejemp%o comp%eto es una re2erencia para conocer %as instrucciones de MATLAB
para manejo de arc5i#os
)na ap%icacin de manejo de un arc5i#o con datos de estudiantes!
Los datos Nue se a%macenan en e% arc5i#o inc%uyen:
cdigo de% estudiante <entero de * dgitos=
cdigo de %a materia <entero de * dgitos=
ca%i2icacin o"tenida por e% estudiante en %a materia <entero de & dgitos=
D% programa de"e pedir un nom"re para e% arc5i#oC a"rir%o para agregar datos y o2recer %as
siguientes opciones mediante un menS:
= 'ngreso de un nue#o dato
$= Kado e% cdigo de un estudianteC mostrar sus materias y ca%i2icaciones
&= Kado e% cdigo de una materiaC mostrar %os estudiantes y su ca%i2icacin
(= Ma%ir
-aria"%es Nue son usadas en e% programa
e codigo de estudiante
m codigo de materia
c ca%i2icacion
arc5 nom"re de% arc5i#o dado por e% usuario
2unction contro%
g%o"a% arc5@
c%c@
arc5?input<Iingrese e% nom"re de% arc5i#o I=@
op?3@
75i%e opV?(
op?menu@
s7itc5 op
case C ingresar@
case $C consu%tae@
case &C consu%tam@
end
end

2unction op?menu
c%c@
disp<I= ingresoI=@
disp<I$= consu%ta por estudianteI=@
disp<I&= consu%ta por materiaI=@
disp<I(= sa%irI=@
op?input<Iingrese una opcion I=@

2unction ingresar
g%o"a% arc5@
2?2open<arc5CIaBI=@
e?input<Icodigo de estudiante I=@
m?input<Icodigo de materia I=@
c?input<Ica%i2icacion I=@
2print2<2CIO*dO*dO&dICeCmCc=@
2c%ose<2=@

2unction consu%tae
g%o"a% arc5@
2?2open<arc5CIrI=@
i2 2U3
disp<Iarc5i#o no e:iste I=@
pause@
return@
end
:?input<Icodigo de estudiante I=@
75i%e V2eo2<2=
e?2scan2<2CIOdIC=@
m?2scan2<2CIOdIC=@
c?2scan2<2CIOdIC=@
i2 e??:
2print2<ITn codigo de materia O*dICm=@
2print2<ITn ca%i2icacion O&dICc=@
end
end
pause@
2c%ose<2=@

2unction consu%tam
g%o"a% arc5@
2?2open<arc5CIrI=@
i2 2U3
disp<Iarc5i#o no e:iste I=@
pause@
return@
end
:?input<Icodigo de materia I=@
75i%e V2eo2<2=
e?2scan2<2CIOdIC=@
m?2scan2<2CIOdIC=@
c?2scan2<2CIOdIC=@
i2 m??:
2print2<ITn codigo de estudiante O*dICe=@
2print2<ITn ca%i2icacion O&dICc=@
end
end
pause@
2c%ose<2=@
'QTDRACC'ZQ COQ OTROM DQTORQOM
'nteraccin con DbCDL
= 'mportar una ta"%a de datos desde D:ce% a una matriz en MATLAB
a= .n D:ce% cree la tabla y almac*nela con formato tipo te!to delimitado con tabulaciones. .li"a
alg0n nombre. ."emplo T!t:t
"= .n MATLAB cargue la tabla T y 0sela como una matri&M
;; %oad T!t:t@
;; A?T
$= D:portar una matriz de datos desde MATLAB a una ta"%a en D:ce%
a) .n MATLAB cree una matri& y almac*nela con el comando sa#e con el siguiente
formato. .li"a los nombres. ."emplo
AM nombre de la matri& en MATLAB
TM nombre para la tabla almacenada
;; sa#e T A Gascii
b) .n D:ce% abra el arc/i%o T y 0selo como una tabla de datos
Bi"%iogra2a
Using Matlab# Oersion 4# 'omputation# Oisuali&ation# Programming#
T/e Mat/ [orKs (nc.
Autor
Luis Rodrguez Ojeda
lrodrig@espol.edu.ec
(nstituto de 'iencias Matemticas
.scuela ,uperior Polit*cnica del Litoral
+uaya$uil# .cuador
2663

You might also like