Sie sind auf Seite 1von 7

Fundamentos de programacin en Matlab

Programar en matlab es bastante fcil; solo se requiere un poco de habilidad en el manejo de los
comandos bsicos y tener fundamentos en la elaboracin de algoritmos con el fin de poder
redactar en forma secuencial y lgica las diferentes sentencias que deseamos ejecutar.

Todos los comandos vistos en las prcticas anteriores pueden ser llevados a formar ficheros o un
archivos de comandos (programa, o script) que sern digitados tal y como se hara en la ventana
de comandos; pero escribindolos en el editor de archivos, seleccionando en la barra de
herramientas de MATLAB la opcin: File New M-file


Una vez se ingresa al editor, se escriben los comandos, finalizando generalmente cada lnea con
punto y coma (;) (a menos que se indique lo contrario ) tal y como veremos en el siguiente ejemplo:


Como podemos apreciar, el editor enumera cada lnea del programa automticamente y por lo
tanto el usuario solo deber preocuparse por seguir las directrices de sintaxis que exige el matlab
para los diferentes comandos.

Una vez se han escrito las instrucciones, se salva el fichero mediante el comando File Save y
asignndole un nombre acorde a las instrucciones que procesar.
Ejercicio1:
Localizar en Matlab la carpeta de trabajo y crear un fichero; digitar las instrucciones
que aparecen en el ejemplo anterior y almacenarlos en un archivo con el nombre Ejercicio1 (sin
espacios en el nombre)
Para ejecutar un programa, basta con digitar en la ventana de comandos el nombre del fichero (por
ejemplo digitar en la ventana de comandos Ejercicio1).

Para editar un archivo de comandos, seleccione en la barra de herramientas de MATLAB la
opcin: File Open o seleccione el cono respectivo.
En el archivo abierto en la ventana de edicin haga los cambios y gurdelo nuevamente con el
mismo nombre.

Estructuras de control de flujo en MATLAB
Instrucciones de Entrada y Salida
1. Ingreso de un dato desde el teclado: Si deseamos almacenar en una variable un dato
ingresado por el usuario empleando el teclado se emplea el comando
variable=input(mensaje);
El mensaje se refiere al texto que deseamos anteceda al ingreso del dato en la pantalla
cuando se corre el programa y siempre debe de ir entre comillas sencillas ( )
Ej.
x = input('ingrese un dato ');
Observe que el comando finaliza con punto y coma(;)
Este comando es el equivalente en algoritmos a: leer (variable)
2. Salida de un resultado a la pantalla: Si deseamos mostrar el contenido de una variable
se emplea el comando disp(variable);
Ej.
x=exp(2);
disp(x);

3. Salida de ms de un resultado a pantalla: Si deseamos mostrar simultneamente el
contenido varias variables empleamos el comando disp([valor, valor, ]);
Ej.
x=2^7;
y=sqrt(pi);
disp([x, y]);
4. Salida de resultados formateados a pantalla: Consiste en controlar la presentacin de
la informacin en pantalla aplicando formatos de control de decimales, textos
acompaando los datos y saltos de lnea entre otros exactamente como se hace en el
lenguaje de programacin c, c++y visual c; Para ello empleamos el comando
fprintf(textos y/o formatos para variables o caracteres de control,variables)
Ej.
x = input('ingrese un dato ');
y=sqrt(x);
fprintf('valor ingresado %5.2f\n y su raiz cuadrada es %5.2f\n',x,y)

El smbolo %5.2f implica que el nmero a presentar ser de tipo flotante (f) y que para
presentarlo en pantalla se deben reservar 5 caracteres de los cuales 2 sern decimales.
El smbolo \n implica insertar inmediatamente un salto de lnea en el texto, es decir que
cada que en una lnea de texto se encuentra dicho smbolo el cursor avanzar una lnea
antes de continuar con el siguiente carcter de la lnea.
La interpretacin del texto mostrado en pantalla ser: la frace valor ingresado seguida de
un numero flotante que ocupar mximo cinco caracteres de los cuales 2 sern decimales
(%5.2f) luego avanzar una lnea(\n) y escribir la frace y su raiz cuadrada seguida de un
numero flotante que ocupar mximo cinco caracteres de los cuales 2 sern decimales
(%5.2f) y al finalizar avanzar otra lnea(\n).
El listado de variables al final del mensaje entre comillas (,x,y) sern las variables que
reemplazarn en estricto orden a los caracteres de control %5.2f dentro del mensaje.

Otras especificaciones de formato puede verlas con help fprintf


ESTRUCTURAS DE CONTROL:
Desiciones simples (instruccin if)

if condicin
instrucciones instrucciones
end

Decisiones compuestas (instruccin if else)

if condicin
instrucciones
else
instrucciones
end

ejemplo:

a=input('ingrese el primer dato ');
b=input('ingrese el segundo dato ');
if a>b
m=a;
else
m=b;
end
disp(m);

Desiciones abiertas a varias posibilidades (swith)
switch _______
variable
case _________,
contenido1
instrucciones;
case _________,
contenido2
instrucciones;
case _________,
contenido3
instrucciones;
.
.
.
.
otherwise
instrucciones;
end

ejemplo:

Ej. Escriba el siguiente programa para instrumentar la definicin:
y =
x=input('dato ');
switch x
case 1,
y=3;
case {2,3,4},
y=2*x+1;
otherwise
y=exp(x);
end
disp(y);

Ciclos con la instruccin mientras (while)
while condicin
instrucciones
end

ejemplo:

Sume los n primeros trminos de la serie armnica:

n=input('cantidad de terminos ');
s=0;
while n>0
s=s+1/n;
n=n-1;
end
disp(s);

Ciclos con la instruccin para (for)
1. Incrementando la variable contadora en 1 unidad cada vez.
for variable=inicio: final
instrucciones
end

2. Incrementando la variable contadora en intervalos definidos por el usuario.
for variable=inicio: incremento: final
instrucciones
end

Ejemplo.
Sume los n primeros trminos de la serie armnica:
n=input('cantidad de terminos ');
s=0;
for i=1:n
s=s+1/i;
end
disp(s);

NOTA: UN CICLO PUEDE SER INTERRUMPIDO DENTRO DEL DESARROLLO MEDIANTE LA
INSTRUCCIN break

EJEMPLO:

Lea n datos. Calcule y muestre la raz cuadrada. Pero si entra un valor negativo, muestre un
mensaje y termine
n=input('cantidad de datos ');
for i=1:n
x=input('ingrese siguiente dato ');
if x<0
disp('Error');
break;
else
r=sqrt(x);
disp([x,r]);
end
end