Professional Documents
Culture Documents
x=-5*pi:pi/40:5*pi;
y=sin(x);
plot(x,y)
salida{1}=sprintf('
x
for i=1:length(x)
salida{i+1}=sprintf('%18.8f%18.8f ',x(i),sin(x(i)));
end
set(handles.listbox1,'String',salida);
function listbox1_Callback(hObject, eventdata, handles)
sin(x)');
Entrada/salida
Cuando vamos a reservar un vuelo introducimos en el programa la fecha y
las ciudades de origen y destino. El programa informtico nos proporciona
las horas de partida del avin de la ciudad de origen y otra informacin
relevante para el viajero. Se selecciona la fecha en un control del
tipo date y las ciudades de origen y destino en un control de
tipo list desplegable ordenadas alfabticamente.
En MATLAB podemos cambiar el valor de los parmetros de entrada con
el editor de script, guardar de nuevo el script modificado y correrlo. Pero es
mucho ms fcil utilizar el comado input tal como hemos visto al final de la
pgina Variables.
a=input('primer coeficiente, a: ');
str=input('mensaje: ','s');
MATLAB imprime los resultados de los clculos y los guarda bien en una
variable o en ans, si no se especifica. En muchos casos esto es suficiente,
pero en programas ms largos es necesario identificar o describir el
resultado de un determinado clculo. MATLAB dispone de una
funcin fprintf muy verstil para mostrar distintos datos con formato,
alternativamente se puede utilizar la funcin disp.
La funcin disp
La funcin disp de MATLAB se utiliza para mostrar un escalar, un mensaje
(string), un vector o una matriz.
En la lnea de comandos escribimos
>> disp('resultado')
resultado
>> y=22;
>> disp(y)
22
>> x=1:0.5:3;
>> disp(x)
1.0000
1.5000
2.0000
>> A=[1 2 3; 4 5 6; 7 8 9];
>> disp(A)
1
2
3
4
5
6
7
8
9
2.5000
3.0000
La funcin disp imprime una matriz A, vamos a ver ahora como imprime
una tabla de valores (abscisa, ordenada). Creamos el script prueba.
x=0:5 %vector fila
y=3*x.^2-5 %vector fila
res(:,1)=x'; %columna 1 de la matriz
res(:,2)=y'; %columna 2 de la martiz
%esto es equivalente a poner res=[x' y']
disp('tabla funcin')
disp('abscisa
ordenada')
disp(res)
22
43
70
La funcin fprintf
Es otra funcin para mostrar un mensaje o un resultado, pero que permite
mezclar texto y valores numricos de las variables y tambin se puede
ajustar el formato de los nmeros. Esta funcin tiene muchas posibilidades
por lo que empezaremos con las ms sencillas.
fprintf('texto %5.2f texto adicional', variable)
En medio del texto se ha intercalado un valor numrico que contiene una
variable con el formato %-5.2f,
0, aade ceros
5, indica cinco caracteres que es el ancho del campo donde ese imprime el
valor numrico, si el nmero es ms corto se aaden espacios o ceros
delante del nmero.
i, indica entero
g, formato corto
El carcter \n al final del texto en la funcin fprintf indica una nueva lnea,
probar el efecto al quitarlo. Las variables que guardan los
datos v0, ang y x se ponen al final en el mismo orden que se citan en el
texto separadas por comas. Se sugiere al lector que pruebe otros formatos
Corremos el script en la ventana de comandos
>> prueba
velocidad 46.3250 m/s, ngulo de tiro 32, alcance 196.82 m
La funcin sprintf
La funcin sprintf es similar a printf salvo que imprime en una variable. Se
utiliza en combinacin con la funcin grfica text para mostrar valores de
una variable en un grfico
%cdigo para dibujar un grfico
plot(Vr,Pr,'r')
text(1,1.35,sprintf('presin %1.3f',p))