Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diagrama de Flujo Matlab
Diagrama de Flujo Matlab
I.
ESGE-FIAG
Objetivos
1. Aprender a utilizar el Matlab, mediante su programacin para la resolucin de
problemas matemticos, para su posterior aplicacin en problemas del mbito
laboral.
II.
Fundamento terico
1. MATLAB :
MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un software
matemtico que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de
programacin propio (lenguaje M). Est disponible para las plataformas Unix,
Windows y Mac OS X.
Entre sus prestaciones bsicas se hallan: la
manipulacin de matrices, la representacin
de datos y funciones, la implementacin de
algoritmos, la creacin de interfaces de
usuario (GUI) y la comunicacin con
programas en otros lenguajes y con otros
dispositivos hardware. El paquete MATLAB
dispone de dos herramientas adicionales
que expanden sus prestaciones, a saber,
Simulink
(plataforma
de
simulacin
multidominio) y GUIDE (editor de interfaces
de usuario - GUI). Adems, se pueden
ampliar las capacidades de MATLAB con las cajas de herramientas (toolboxes); y las de
Simulink con los paquetes de bloques (blocksets).
Matlab, a parte del clculo matricial y lgebra lineal, tambin puede manejar
polinomios, funciones, ecuaciones diferenciales ordinarias, grficos.
COMPUTACION E INFORMATICA
Pgina 1
ESGE-FIAG
III.
Vectores/Matrices.
Funciones.
Cadenas de Texto.
Graficas 2D.
Graficas 3D.
GUI y GUIDE.
Scripts y Funciones.
Estructuras de Control.
Celdas.
Aplicaciones.
Excel.
Data Acquisition
Resolucin de Practica
LEER:
x1,Y1,x2,y2,x3,y3
A= [
ESCRIBIR
A
FIN
COMPUTACION E INFORMATICA
Pgina 2
ESGE-FIAG
COMPUTACION E INFORMATICA
Pgina 3
ESGE-FIAG
INICIO
LEER
M
M=tan(anglULO*pi/180);
ESCRIBIR
M
FIN
COMPUTACION E INFORMATICA
Pgina 4
ESGE-FIAG
3.- Disee un diagrama de flujo gras que calcule el rea y volumen de un cilindro
cuyo radio (R) y la altura (H) se leen desde teclado .Adems progrmelo con
MATLAB.
INICIO
LEER
R,H
xR^2
AxH
A
V
ESCRIBIR
A, V
FIN
COMPUTACION E INFORMATICA
Pgina 5
ESGE-FIAG
INICIO
LEER
N
n=positivo
n=negativo
N>0
Escribir
Escribir
N=positivo
N=negativo
FIN
COMPUTACION E INFORMATICA
Pgina 6
ESGE-FIAG
COMPUTACION E INFORMATICA
Pgina 7
ESGE-FIAG
5.- Disee un diagrama de flujo de programas tal que ingresado dos nmeros A y B
muestre cul de los valores ledos es el mayor .Adems, progrmelo con MATLAB.
INICIO
LEER
AYB
IF
A>B
A - MAYOR
IF
B>A
B - MAYOR
ESCRIBIR
AYB
FIN
COMPUTACION E INFORMATICA
Pgina 8
ESGE-FIAG
COMPUTACION E INFORMATICA
Pgina 9
ESGE-FIAG
6.- Disee un diagrama de flujo de programas tal que ingresado dos nmeros A y B
muestre la suma de los dos nmeros, solo si la suma es par. Adems, progrmelo con
MATLAB.
INICIO
LEER
N (A,B)
A+B
=2N
ESCRIBIR
N
FIN
COMPUTACION E INFORMATICA
Pgina 10
ESGE-FIAG
7.- Disee un diagrama de flujo de programas tal que ingresado tres valores A ,B y C
muestre cual es el mayor y el menor .Para este caso se asume que los tres valores ledos
por el teclado son distintos. Adems, progrmelo con MATLAB.
INICIO
LEER A, B Y C
IF
A>B
B>C
C ES MENOR
A ES MAYOR
IF
C>A
A>B
B ES MENOR
C ES MAYOR
IF
B>A
C>A
B ES MAYOR
A ES MENOR
ESCRIBIR
A,B Y C
FIN
COMPUTACION E INFORMATICA
Pgina 11
ESGE-FIAG
COMPUTACION E INFORMATICA
Pgina 12
ESGE-FIAG
8.- Disee un diagrama de flujo de programas que calcule la suma de los n primeros
nmeros naturales. Adems, progrmelo con MATLAB
DIAGRAMA DE FLUJO
INICIO
LEER: n
S=0
I=1, n
S = S+I
ESCRIBIR
S
FIN
COMPUTACION E INFORMATICA
Pgina 13
ESGE-FIAG
COMPUTACION E INFORMATICA
Pgina 14
ESGE-FIAG
9.- Disee un Diagrama de Flujo de programas que calcule la suma de los n primeros
nmeros naturales impares. Adems, progrmelo con MATLAB
DIAGRAMA DE FLUJO
INICIO
LEER: n
S=0
I=1, n
S = S+2*I-1
I = I+1
ESCRIBIR
S
FIN
COMPUTACION E INFORMATICA
Pgina 15
ESGE-FIAG
CODIFICACION EN MATLAB
%este programa calcula la suma de los n numeros impares
n=input('ingrese los n numeros impares:');
S=0;
for I=1:n
S=S+2*I-1;
I=I+1;
end
disp(S)
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 16
ESGE-FIAG
10.- Disee un Diagrama de Flujo de programas que calcule la suma de los n primeros
nmeros naturales pares. Adems, progrmelo con MATLAB
DIAGRAMA DE FLUJO
INICIO
LEER: n
S=0
I=1, n
S = S+2*I
I = I+1
ESCRIBIR
S
FIN
COMPUTACION E INFORMATICA
Pgina 17
ESGE-FIAG
CODIFICACION EN MATLAB
%este programa calcula la suma de los n numeros pares
n=input('ingrese los n numeros pares:');
S=0;
I=1;
for I=1:n
S=S+2*I;
I=I+1;
end
disp(S)
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 18
ESGE-FIAG
DIAGRAMA DE FLUJO
INICIO
LEER: n
S=1
I=1, n
S = S*I
ESCRIBIR
S
FIN
COMPUTACION E INFORMATICA
Pgina 19
ESGE-FIAG
CODIFICACION EN MATLAB
%este programa calcula el factorial de un numero entero
n=input('ingrese el n numero :');
S=1;
for I=1:n;
S=S*I;
end
disp(S)
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 20
ESGE-FIAG
12.- Disee un diagrama de flujo de programas que calcule la suma de los n primeros
trminos de la sucesin
DIAGRAMA DE FLUJO
INICIO
LEER: n
S=0
I=1, n
S = S + n/(n+1)
ESCRIBIR
S
FIN
COMPUTACION E INFORMATICA
Pgina 21
ESGE-FIAG
CODIFICACION EN MATLAB
% Este programa calcula la suma de los primero n terminos de la sucesion:
% s = 1/2 + 2/3 + 3/4 + 4/5...
%------------------------N=input('Ingrese el numero de terminos de la sucesion: ');
s=0;
for I=1:N
s=s+N/(N+1);
end
disp(s)
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 22
ESGE-FIAG
13. - Disee un diagrama de flujo de programas que calcule la suma de los n primeros
trminos de la sucesin
DIAGRAMA DE FLUJO
INICIO
LEER: n
I=1
S=0
WHILE
I <= n
LEER:
Nombre, Sueldo
descuento = Sueldo*13/100
ESCRIBIR
S
SueldoFinal = Sueldo - descuento
S = S + SueldoFinal
FIN
I = I+1
COMPUTACION E INFORMATICA
Pgina 23
ESGE-FIAG
CODIFICACION EN MATLAB
%este programa calcula el sueldo de trabajadores
n=input('ingrese el nmero de trabajadores:');
S=0;
I=1;
while I<=n
Nombre=input('ingrese el nombre del trabajador:');
Sueldo=input('ingrese el sueldo del trabajador:');
descuento=Sueldo*13/100
SueldoFinal=Sueldo-descuento
S=S+SueldoFinal;
I=I+1;
end
fprintf('El total a pagar a todos los trabajadores es:%5.2f\n',S)
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 24
ESGE-FIAG
COMPUTACION E INFORMATICA
Pgina 25
ESGE-FIAG
CODIFICACION EN MATLAB
% En el curso de Programacin Aplicada a la Ingeniera 25 estudiantes
% rindieron su primera evaluacin. Disee un diagrama de flujo de programas que
muestre:
%problema 14: nota promedio y aprobados
x1=input('ingresar nota: ');
x2=input('ingresar nota: ');
x3=input('ingresar nota: ');
x4=input('ingresar nota: ');
x5=input('ingresar nota: ');
x6=input('ingresar nota: ');
x7=input('ingresar nota: ');
x8=input('ingresar nota: ');
x9=input('ingresar nota: ');
x10=input('ingresar nota: ');
x11=input('ingresar nota: ');
x12=input('ingresar nota: ');
x13=input('ingresar nota: ');
x14=input('ingresar nota: ');
x15=input('ingresar nota: ');
x16=input('ingresar nota: ');
x17=input('ingresar nota: ');
x18=input('ingresar nota: ');
x19=input('ingresar nota: ');
x20=input('ingresar nota: ');
COMPUTACION E INFORMATICA
Pgina 26
ESGE-FIAG
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 27
ESGE-FIAG
1 5. Disee un diagrama de flujo con programas tal que ingresando n nmeros naturales
mostrar el menor y la suma de los n nmeros .Adems progrmelo en MATLAB.
COMPUTACION E INFORMATICA
Pgina 28
ESGE-FIAG
CODIFICACION EN MATLAB
n=input('ingrese el "n" numeros: ');
for i=1:n
fprintf('ingrese numero %d: ',i);
N(i)=input('');
end
%k=length(N);
a=max(N);
b=min(N);
fprintf('El maximo de %d es: %d \nEl menor de %d es: %d \n',n,a,n,b);
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 29
ESGE-FIAG
16. Disee un diagrama de flujo tal que ingresando n nmeros naturales mostrar el
promedio. Progrmelo en MATLAB.
COMPUTACION E INFORMATICA
Pgina 30
ESGE-FIAG
CODIFICACION EN MATLAB
%el promedio de n numeros
clc;
N=input('Ingrese la cantidad de numeros=');
x=[];
for i=1:N
numero=input('Ingrese numero=');
x=[x numero];
end
for i=1:1
prom = mean(x);
disp('promedio:')
disp(prom)
end
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 31
ESGE-FIAG
17. Disee un diagrama de flujo de programas que calcule la suma de los n primeros t
rminos de la sucesin:
.Adems progrmelo en MATLAB.
INICIO
ESCRIBIR: N, x
S=0
i=0:N-1
S=S+x^i/factorial(i)
ESCRIBIR:S
FIN
COMPUTACION E INFORMATICA
Pgina 32
ESGE-FIAG
CODIFICACION EN MATLAB
%Este diagrama muestra la suma de los 'n' primeros trminos de la
%sucesin:1,x,x^2/2!,x^3/3!,...
N= input('Ingrese el nmero de trminos de la serie = ');
x= input('Ingrese el valor de x = ');
S=0;
for i= 0:N-1
S= S + x^i/factorial(i);
end;
disp('La sumatoria da =');
disp(S);
PRUEBA EN MATLAB
18. Disee un diagrama de flujo de programas que calcule la suma de los n primeros
trminos de la sucesin:
COMPUTACION E INFORMATICA
ESGE-FIAG
INICIO
ESCRIBIR
N, X
S=0
i=0:N
(rem(i,2)==0)
S=S-(X^(2*i))/factorial(2*i-1)
S=S+(X^(2*i))/factorial(2*i-1)
ESCRIBIR
S
FIN
COMPUTACION E INFORMATICA
Pgina 34
ESGE-FIAG
CODIFICACION EN MATLAB
%Este diagrama muestra la suma de los 'n' primeros terminos de la
%sucesin:1,-x^3/3!,x^5/5!,x^7/7!,...
disp('Serie de N trminos');
X= input('Ingrese el valor de X =');
N= input('Ingrese numero de terminos de la serie =');
S=0;
for i= 1:N
if (rem(i,2)==0)
S=S-(X^(2*i-1))/factorial(2*i-1);
else
S=S+(X^(2*i-1))/factorial(2*i-1);
end;
end;
disp(S);
COMPUTACION E INFORMATICA
Pgina 35
ESGE-FIAG
19. Disee un diagrama de flujo de programas que calcule la suma de los n primeros
trminos de la sucesin:
INICIO
ESCRIBIR
N, X
S=0
i=0:N-1
(rem(i,2)==0)
S=S-(X^(2*i))/factorial(2*i)
S=S+(X^(2*i))/factorial(2*i)
ESCRIBIR
S
FIN
COMPUTACION E INFORMATICA
Pgina 36
ESGE-FIAG
CODIFICACION EN MATLAB
%Este diagrama muestra la suma de los 'n' primeros terminos de la
%sucesion:1,-x^2/2!,x^4/4!,x^6/6!,...
disp('Serie de N trminos');
X= input('Ingrese el valor de X =');
N= input('Ingrese numero de terminos de la serie =');
S=0;
for i= 0:N-1
if (rem(i,2)==0)
S=S+(X^(2*i))/factorial(2*i);
else
S=S-(X^(2*i))/factorial(2*i);
end;
end;
disp(S);
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 37
ESGE-FIAG
20. Disee un diagrama de flujo de los programas que calcule la suma de los elementos de
la diagonal principal de una matriz cuadrada. A adems progrmelo a Matlab.
DIAGRAMA DE FLUJO
INICIO
LEER: n
Suma=0
K= 1:n
i=1:n
j=1:n ; v(i,j)
i==j
Suma=suma +v(i,j)
RESULTADO
Suma
FIN
COMPUTACION E INFORMATICA
Pgina 38
ESGE-FIAG
CODIFICACION EN MATLAB
n=input('ingrese numero fila y columnas: ');
suma=0;
%for k=1:n
for i=1:n
for j=1:n
v(i,j)=input('ingrese valor \n');
if i==j
suma=suma+v(i,j);
end
end
end
%end
suma
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 39
ESGE-FIAG
21. Disee un diagrama de flujo de programa que calcule el producto de dos matrices.
Adems, progrmelo con Matlab
DIAGRAMA DE FLUJO
INICIO
LEER: n; m; a; b
S=0
K= 1:n
i=1:n
j=1:m ; v(i,j)
i=1:a
j=1:b ; b(i,j)
RESULTADO
c=v*b
FIN
COMPUTACION E INFORMATICA
Pgina 40
ESGE-FIAG
CODIFICANDO EN EL MATLAB
n=input('ingrese numero fila Matriz A: ');
m=input('ingrese numero columnas Matriz A: ');
a=input('ingrese numero fila Matriz B: ');
b=input('ingrese numero columnas Matriz B: ');
s=0;
for i=1:n
for j=1:m
fprintf('Ingrese valores (%d,%d) de la Matriz A: ',i,j);
v(i,j)=input('');
end
end
for i=1:a
for j=1:b
fprintf('Ingrese valores (%d,%d) de la Matriz B: ',i,j);
b(i,j)=input('');
end
end
c=v*b
PRUEBA EN MATLAB
COMPUTACION E INFORMATICA
Pgina 41
ESGE-FIAG
22. Disee un Diagrama de flujo de programas que calcule el determinante de una matriz
cuadrada. Adems, progrmelo con Matlab.
DIAGRAMA DE FLUJO
INICIO
LEER: n
Suma=0
K= 1:n
i=1:n
j=1:n ; v(i,j)
ESCRIBIR
v
RESULTADO
Det(v)
FIN
COMPUTACION E INFORMATICA
Pgina 42
ESGE-FIAG
CODIFICANDO EN EL MATLAB
n=input('ingrese numero fila y columnas: ');
suma=0;
%for k=1:n
for i=1:n
for j=1:n
v(i,j)=input('ingrese valor \n');
end
end
%v
det(v)
PRUEBA EN EL MATLAB
COMPUTACION E INFORMATICA
Pgina 43
ESGE-FIAG
INICIO
LEER: n
I = 1:n
c=max(v)
d=min(v)
ESCRIBIR
c;d
FIN
CODIFICANDO EN EL MATLAB
n=input('ingrese numero elementos de Vector: ');
for i=1:n
fprintf('Ingrese elemento (1,%d): ',i);
v(i)=input('');
end
c=max(v);
d=min(v);
fprintf('El mayor elemento es %d \nEl menor elemento es %d\n',c,d);
COMPUTACION E INFORMATICA
Pgina 44
ESGE-FIAG
PRUEBA EN EL MATLAB
INICIO
LEER: n
I = 1:n
v(i)
ESCRIBIR
m
COMPUTACION E INFORMATICA
FIN
Pgina 45
ESGE-FIAG
CODIFICANDO EN EL MATLAB
n=input('ingrese numero elementos de Vector: ');
for i=1:n
fprintf('Ingrese elemento (1,%d): ',i);
v(i)=input('');
end
m=input('ingrese elemento a eliminar (posicion): ');
PRUEBA EN EL MATLAB
COMPUTACION E INFORMATICA
Pgina 46
ESGE-FIAG
LEER:
n;m
I = 1:n
v(i)
ESCRIBIR
m; n
v(:,m)=[n]
FIN
CODIFICANDO EN EL MATLAB
n=input('ingrese numero elementos de Vector: ');
for i=1:n
fprintf('Ingrese elemento (1,%d): ',i);
v(i)=input('');
end
m=input('ingrese elemento a eliminar (posicion): ');
n=input('ingrese para sustituir : ');
v(:,m)=[n];
v
COMPUTACION E INFORMATICA
Pgina 47
ESGE-FIAG
PRUEBA EN EL MATLAB
ingrese numero elementos de Vector: 5
Ingrese elemento (1,1): 4
Ingrese elemento (1,2): 3
Ingrese elemento (1,3): 4
Ingrese elemento (1,4): 9
Ingrese elemento (1,5): 1
ingrese elemento a eliminar (posicion): 3
ingrese para sustituir : 2
v=
4
COMPUTACION E INFORMATICA
Pgina 48
VI.
ESGE-FIAG
Conclusiones
1. Gracias a los ejercicios hechos en el trabajo se pudo afianzar los
conocimientos bsicos de la programacin en Matlab, utilizando
principalmente el editor y ejecutarlo en el command matlab.
2. Mediante la utilizacin del Matlab, podemos resolver problemas matemticos
y del mbito laboral, facilitando su resolucin.
VII. Bibliografa
http://civilgeeks.com/2011/01/09/matlab-aplicado-a-ciencias-eingenieria/
http://es.wikipedia.org/wiki/MATLAB
COMPUTACION E INFORMATICA
Pgina 49