Вы находитесь на странице: 1из 10

MAT -127 Computacin II

Programacin en MATLAB
Sentencias condicionales:

Sentencias de Iteracin:

Estructuras de control:

Diagrama de flujo: herramienta de programacin que resuelve el


problema grficamente.

1: Sentencias de Inicio y fin de Programacin.-

INICIO/FIN

2. Entrada de datos:

Variable = funcin
INPUT

(comentario)

3. Flujo de Datos : mediante flechas y/o lneas

4. Proceso

5. Sentencias condicionales:

NO SI
O CONDICIN

PROCESO PROCESO
If condicin

then proceso (s)

else proceso

end

If condicin

proceso (s) (v)

else proceso(s) F

end

mientras este apagada la computadora no la puedo usar:

6. SENTENCIAS DE CONTROL (ESTRUCTURAS)

condicion

proces
o

While condicin

proceso (V)

end
7. SWITCH

variable

P1 P2 P3

Switch variable

Case proceso 1

Case proceso 2

Case proceso 3

Otherwise proceso 4

8. SENTENCIAS DE ITERACIN (CONTEO)

Li: lmite inferior

Ls: lmite superior in: incremento

Var=li:in:ls

proceso

for var=li:in:ls

proceso

end
Ejemplo 1:

N=input('Introducir un nmero:');
if N==1
disp('Todo en orden')
else
disp('alerta !intruso!')
end

TAREA 1: 5 acciones de un robot y/o una casa inteligente que tipo de


sentencias se utilizan para realizar esas acciones.

Enviar la hoja de control a : brigidacarvajalblanco@gmail.com

2 puntos de hoy:

- Edificio inteligente

Accin Tipo de Sentencias

control de humedad y temperatura sentencias de control y


condicionales

iluminacin sentencias condicionales

Deteccin de incendios sentencias de control

control de los ascensores sentencias de control y de iteracin

aclimatizacion del ambiente sentencias de control y


condicionales
Ejercicio:Dados tres nmeros a,b,c se debe encontrar al mayor

Diagrama de Flujo:

a=input('introducir el primer numero:')


b=input('introducir el segundo numero:')
c=input('introducir el tercer numero:')
if a==b & a==c
disp ('son iguales')
elseif a>b & a>c
fprintf('%5d\n',a)
elseif a>b & b>c
fprintf('%5d\n',b)
else a<b & b<c
fprintf('%5d\n',c)
end

2.

Datos:

HT: hora trabajada

Sh: salario por hora

HE: horas extras

clc
sh=input('salario por hora:');
th=input('nro de horas trabajadas:');
if th>40
he=th-40;
she=sh*1.5*he;
s=sh*40+she;
else s=sh*th
end
fprintf('el salario semanal es de %5.2f pesos',s);

tarea: 1. De 4 numeros escoger el mayor

tarea 2: calcular el salario para 6 empleados (uso de while y for)


tarea 1

a=input('introducir el primer numero:');


b=input('introducir el segundo numero:');
c=input('introducir el tercer numero:');
d=input('introducir el cuarto numero:');
if a==b & c==d & a>c
fprintf('el mayor es %5d\n',a)
elseif a==c & b==d & a>b
fprintf('el mayor es %5d\n',a)
elseif a==d & b==c & a>b
fprintf('el mayor es %5d\n',a)
elseif b==c & a==d & b>a
fprintf('el mayor es %5d\n',b)
elseif b==d & a==c & b>a
fprintf('el mayor es %5d\n',b)
elseif c==d & a==b & c>a
fprintf('el mayor es %5d\n',c)
elseif a==b & b==c & b>d
fprintf('el mayor es %5d\n',b)
elseif a==d & d==b & b>c
fprintf('el mayor es %5d\n',b)
elseif a==b & b==c & c==d
display('los cuatro son iguales')
elseif a==b & c>d & a>c
fprintf('el mayor es %5d\n',a)
elseif a==c & b>d & a>b
fprintf('el mayor es %5d\n',a)
elseif a==c & b>d & a<b
fprintf('el mayor es %5d\n',b)
elseif a>b & a>c & a>d
fprintf('el mayor es %5d\n',a)
elseif b>a & b>c & b>d
fprintf('el mayor es %5d\n',b)
elseif c>a & c>b & c>d
fprintf('el mayor es %5d\n',c)
else d>a & d>b & d>c
fprintf('el mayor es %5d\n',d)
end

tarea 2

clc
n=input('nro de empleados:');
sh=input('salario por hora de los empleados:');
th=input('nro de horas trabajadas de los empleados:');
for k=1:1:n;
if th[k]>40
he=th(k)-40;
disp(he);
she=1.5*sh(k)*he;
s=40*sh+she;
else s=sh(k)*th(k)'
disp(s)
end
fprintf('el salario semanal de los empleados es de %5.2f',s);
Estructura If else-end

clc
h=input('introducir la altura h:');
if h<=19 & h>=0
v=pi*12.5^2*h;
fprintf('el volumen de agua es %5.2f metros cbicos',v)
elseif h>19 & h<=33
rh= 12.5+10.5*(h-19)/14;
v=pi*12.5^2*19+pi*(h-19)*(12.5^2+12.5*rh+rh^2)/3;
fprintf('el volumen de agua es %5.2f metros cbicos',v)
else h>33
disp('fuera del rango solo entre 0 y 33')
end

uso del while:

cambio de estado en caso de elevacion de temperatura

T=input('introducir temperatura:');
c=1;
%cambia de estado
while T>=16 & c==1
disp('activar alarma')
disp('EMERGENCIA')
c=2;
end
if c==1
disp('sin novedades');
else
disp('hubo una emergencia');
end
usar while en

tarea 1 : ejercicio de temperaturas

tarea 2: salario de empleados


tarea1:

T=input('introducir temperaturas (F):');


i=1;
while(i<=length(T))
if(T(i)>=80)
disp('Hace mucho calor');
disp(i);
elseif T(i)<80 & T(i)>45
disp('temperatura normal');
disp(i);
else T(i)<=45
disp('Hace frio')
end
i=i+1;
end

tarea 2:

clc
n=input('nro de empleados:');
sh=input('salario por hora de los empleados:');
th=input('nro de horas trabajadas de los empleados:');
for k=1:n
if th(k)>40
he(k)=th(k)-40;
she(k)=1.5*sh(k)*he(k);
s=40*sh(k)+she(k)
else s=sh(k)*th(k)'
end
end

con while

%clc
sh=input('salario por hora de los empleados:');
th=input('nro de horas trabajadas de los empleados:');
k=1;
while(k<=length(th))
if (th(k)>40)
he(k)=th(k)-40;
she(k)=1.5*sh(k)*he(k);
s=40*sh(k)+she(k)
else th(k)<=40
s(k)=sh(k)*th(k)'
end
k=k+1;
end
COMANDO SWITH CASE

Men

pl=input('introducir tipo de plato que consumir(entrada, sopa, plato,


postre):','s')
e=0;
switch pl
case 'entrada'
precio=5;
case 'sopa'
precio=6;
case 'plato'
precio=15;
case 'postre'
precio=10;
otherwise
e=1;
end
if e==0
fprintf('El precio de \n %s = %g \n bolivianos \n',pl, precio)
else
disp('no ofrecemos eso')
end

SOPA , PLATO PRINCIPAL , POSTRE

Farmacia

Paracetamol, Ibuprofeno, Diclofenaco

dosis

med=input('introducir medicamento(paracetamol, ibuprofeno,


diclofenaco):','s')
dosis=input('introducir dosis en miligramos (50mg,100mg):','s')
unid=input('introducir unidades:')
e=0;
switch med
case 'paracetamol'
switch dosis
case '50mg'
pu=2;
total=pu*unid;
case '100mg'
pu=5;
total=pu*unid;
otherwise
e=1
disp('no contamos con esa dosis')
end
case 'ibuprofeno'
switch dosis
case '50mg'
pu=3;
total=pu*unid;
case '100mg'
pu=6;
total=pu*unid;
otherwise
e=1
disp('no contamos con esa dosis')
end
case 'diclofenaco'
switch dosis
case '50mg'
pu=1;
total=pu*unid;
case '100mg'
pu=2;
total=pu*unid;
otherwise
e=1
disp('no contamos con esa dosis')
end
otherwise
e=1,
end
if e==0
fprintf('El precio total del medicamento \n %s = %g \n pesos
\n',med,total)
else
disp('no contamos con ese producto')
end

Tarea

Uso while case farmacia