Anda di halaman 1dari 7

Metodologa del diseo descendente

Consiste en el desarrollo de un programa que se lleva a cabo identificando


primero grandes acciones y descendiendo a sus detalles progresivos.
Problema complejo: subproblema1-subprobema2-subproblema n
Beneficios:
La programacin es mas sencilla, ya que se puede aplazar el desarrollo de
algunas tareas en benfico del problema global
Pueden programar independientemente miembros de n equipo
El mantenimiento es fcil de realizar, ya que se modifican segmentos de cdigo
(subprogramas) independientes del resto del programa.
La reutilizacin de cdigo ya escrito es mas fcil y natural tanto en el propio
programa comop en otros.
Aumenta la legibilidad del cdigo.

Matlab pone a nuestra disposicin los siguientes tipos de subprogramas


Scrip
Funciones
Un scrip es una secuencia de instrucciones validas en matlab+
El scrip se almaceba en un fichero con la extensin m
Adems de las instrucciones ejecutables, puede contener comentarios
Variables utilizadas por los scripts:
Pede utilizar cualquiera de las variables del workspace
Las variables que crea tambin se almacenan en el workspace
Una vez finalizada la ejecucin, las variables que haya creado, permanecen en
el worspace
Los xcripts han de sr usados cuando se ha de repetir muchas veces una misma
secuencia de operaciones
Para crear un scrip es neceario escribir un fichero con la extensin .m.
El nombre del script es el mismo que el fichero que lo contiene, sin la
extensin.
%Lissajous: Figura de Lissajous
%Entrada de daris
Fx=input(frecuencia en x:);

Dx=inpunt(fase en x:);
Fy=input(frecuencia en y:);
%proceso
T=0:pi/100:2*pi;
X= cos(fx*t+dx);
Y= sin(fy*t+dy);
%Salida de resultados
Plot(x,y)

Uso de scripts
Par4a usar un script, el fichero. M que lo contiene ha de encontrarse:
En el camino de bsqueda (path) de matlab
O en el directorio de trabajo seleccionado (current directory).
Para el
Si desconociramos su propsito
Una funcin es un segmento de cdigo que recibe unos datos llamados
argumentos de entrada, a partr de los cuales una serie de operaciones de
devolver uno o varios valores como resultado
Las variables utilizadas en la funcin son locales: solo son conocidas por esta,
aunque tegan el mismo nombre que otras existentes en el workspace.
Podemos construir tantas funcones como sea neceario y utilizarlas las veces
que deseemos, con los mismos o con diferentes argumentos de entrada

Creacin de Funciones
Para crear una funcin es necesario escribir un fichero.m
El nombre de la funcin es el mismo que el fichero que la contiene, sin la
extensin.
Las funcines, al contrario que los scripts, tiene una sintaxis muy concreta.
Ejemp, fichero sumaMayores.m:
Function suma=sumamayores(vec,min)
%SUMAMAYORES (V,M)
%suma los argumentos de vector que sean mayores o iguales que uno dado.

%Argumentos:
%V: vector de nmeros a sumar
%M: minimo valor que puede sumarse
%Calculo
Suma=sum(vec(vec>=min));

Lnea de definicion
Nombre: sumamayores
Argumentos: vec,min
Resultado: suma
Lneas de ayuda
Primer boque de comentarios

Cuerpo de la funcin
Clculos tan complejos como sea necesario
En algn momento es obligatorio asignar un valor a la variable de resultado
(suma)
Comentario9
Indicaciones para comprender mejor el funcionamiento interno de la funcin.
Uso de las funciones
Para usar una funcin, el fichero .m que lo contiene ha de encontrarse:
En el camino de busquda (path) de matlab
O en el directorio de tranbajo seleccionado
Para ejecutarlo se puede teclear su nombre y argumentos en la ventana de
comandos de matlab, o utilizarla en cualquier expresin compatible con su
resultado.
En caso de duda, es posible solicitar la ayuda

Uso de funciones: paso de argumentos


Se ede realizar tantas llamadas cono se quiera a esta funcin a lo largo de
nuestros scipts o funciones. En llas sucesivas llamadas, los argumentos pueden
cambiar.

En la llamada, el programa llamante cede el control a la funcin para que se


ejecute y el programa llamante se queda a la espera de que la funcin le
devuelve un valor.

Las funciones tambin se pueden dividir en subfunciones

SENTENCIAS DE SELECCIN
Permiten seleccionar la ejecucin de actividades dependiendo de si cumple o
no una condicin dada, es decir, alteran el orden secuencial de ejecuciobn y
controla el flujo del programa.
El lenguaje de matlap tiene una sintaxis propia y permiten elegir que
sentecnias se van a ejecutar dependiendo de que se cumpla la condicion
especificada.
CONSTRUCION DEL BLOQUE IF
Sintaxis: La estructura de este bloque es:
If expresin lgica
Secuencia de instrucciones
End
Semntica:
Se evalua expresin lgica
El resultado puede ser verdadero (1) o falso (0)
Si es verdadero (1),
Se ejecuta secuencia de instrucciones y despus se siguen ejecutando las
instrucciones que siguen al end
Si es falso (o),
Se sigue ejecutando las instrucciones que siguen al end.
EJEMPLO:
%RAIZ: calcula la raz cuadrada si el
%numero es positivo. Si no, no hace nada
x=input('introduce un numero:')
if x>0
x=sqrt(x);
end

disp(x);
>>raiz
Introduce un numero:4
2
>>raiz
Introduce un numero: -4
-4

Expresiones lgicas matriciales


Si la expresin lgica es matricial
El resultado ser verdadero cuando lo sea cada elemento del vector lgico
resultante
Si la matriz lgica resultante es vacia, el resultado se trata como falso
Las construccuines de os dos recuador son equivalentes
+eejemploas utilizando e script raz

If x>0 instruccines
End

Construccin del bloque if general


Sintaxis: la estructura de este bloque es:
If expresin lgica
Secuencia de instrucciones 1
Else
Secuencia de instrucciones 2
End
Semntica
1) S evalua expresin lgica:
El resutado puede ser verdadero (1) o falso (0)
2) Si es verdadero, se ejecuta secuencia de instrucciones 1
3) Si es falso, se ejecuta secuencia de instrucciones 2

4) Dewspues se ejecutan las instrucciones que siguen al end

Diagrama- construccin del bloque if general

Ejemplo:
%Es par: indica si un nuero es par
N=input('Introduce ub numero:');
if md(n,2)==0
dis('par');
else dis('impar');
end

IF ANIDADOS
Es possible anidar estructuras IF generarles en ambas ramas:
If exprlog1
If exprlog2
Else
Secuencia_si1_no2
End
If exprlog3
Secuencua_no1_si3
Else
Secuencia_no1_no3
End
end

enunciado: dadas las longitudes de tres lados (a,b,c), decidir si forman ub


triangulo y de que tipo es:
es triangulo si la sua de dos lados cualesquiera es mayor que el otro
es equiltero si los dos lados son iguaes

es issceles si dos de los lados son iguales


es escaleno si os tres lados son distintos

Anda mungkin juga menyukai