algoritmos que involucran decisiones
DESCRIPTION
Laboratorio de Programación y Computación - UNMSMTRANSCRIPT
-
UNMSM
Laboratorio de Programacin y Computacin - MATLAB 1
ALGORITMOS QUE INVOLUCRAN DECISIONES Pasos de decisin y Condiciones.-
Normalmente, los pasos de un algoritmo se ejecutan en el orden en
que estn listados. Sin embargo, en muchos algoritmos la
secuencia de los pasos que se van a ejecutar se determina por los
datos de entrada. En estos casos, con base en los valores de
ciertas variables, se debe tomar decisiones sobre qu secuencia de
pasos va a ser ejecutada. Tales decisiones requieren la
evaluacin de una condicin que est expresada en trminos de la
variables relevantes. El resultado de la evaluacin determina qu
pasos del algoritmo van a ser ejecutados a continuacin.
El paso del algoritmo que describe la condicin se llama paso de
decisin. Cada paso de decisin involucra la evaluacin de una
expresin de Boole, esto es, una expresin que puede tener el
valor de cierto o falso.
LA SENTENCIA if La sentencia if ejecuta una expresin lgica
y, de acuerdo al resultado de dicha expresin, verdadero o falso,
ejecuta una o ms sentencias si el resultado es verdadero u otras
sentencias si el resultado es falso.
SINTXIS:
if expresin lgica
Sentencia nica; end
if expresin lgica
sentencia 1;
sentencia 2; . . . . . .
sentencia n;
end
if expresin lgica
sentencia nica; else
sentencia nica; end
if expresin lgica sentencia V1;
sentencia V2; . . . . . . . . . . . sentencia Vn;
else sentencia F1;
sentencia F2; . . . . . . . . . . sentencia Fn;
end
expresin lgica es una expresin que puede ser verdadera o
falsa. Se forma comparando los valores de las
expresiones utilizando los operadores de
relacin (operadores relacionales) o de
comparacin y los operadores lgicos.
OPERADORES DE RELACIN ( O RELACIONALES)
Se utilizan para expresar condiciones y describir una relacin
entre dos valores.
OPERADOR SIGNIFICADO EQUIVALENTE MATEMTICO
> Mayor que >
< Menor que <
== Igual a =
>= Mayor o igual que
-
UNMSM
Laboratorio de Programacin y Computacin - MATLAB 2
------------------------------------------------------------
% Programa que lee dos valores e imprime cul de ellos es el
% mayor
i=input('valor de i = ');
j=input('valor de j = ');
if i>j
disp('i es mayor que j')
else
disp('i es menor o igual que j')
end
------------------------------------------------------------
% Programa que lee dos valores y determina cul de ellos es el
% mayor
i=input("Valor de i = ");
j=input("Valor de j = ");
if i>j
disp('i es mayor que j')
end
if i b && b < c
if a*b == c || a/b > 1
if suma < 4 & resta ~= 3.4
EXPRESIONES if ANIDADAS
Ejemplo: (Segmento de programa). Dados 3 nmeros enteros
diferentes, determinar cul es el mayor.
if a > b if a > c
mayor = a;
else
mayor = c;
end
else
if b > c
mayor = b;
end
end
Ejemplos : Si a = 5; b = 3; c = 8; Evaluar : (a >b || c < b) (a > b && a > c) POR ORDEN DE PRIORIDAD V F F PRIMERO SE EJECUTA a > 2 | b > 6 & c < b
& (Y), Y EL RESULTADO
SER VERDADERO F VERDADERO SI UTILIZAMOS PARNTESIS, V F F PRIMERO SE EJECUTAR (a > 2 || b > 6) && c < b
| (O), Y EL RESULTADO
SER FALSO
V
FALSO EJEMPLO : Escriba un programa que calcule la capacidad calorfica del Calcio (c) a
partir de la lectura de su temperatura expresada en grados kelvin sabiendo
que:
Capacidad calorfica
(*)
Rango de Temperatura
(Kelvin)
5.31 + 0.00333T 273 - 673
6.29 + 0.00140T 673 - 873
* capacidad calorfica a presin constante (T = K; 0C = 273.1 K.). Unidades : cal/grado mol
% Programa que calcula el calor especfico del Calcio
t = input('Ingrese un valor de temperatura en kelvin: ');
if t>=273 && t
-
UNMSM
Laboratorio de Programacin y Computacin - MATLAB
Heber Helfer C.
Profesor Del Curso
INICIO
LEER T
T 273
T 873
T < 673
CE 5.31 + 0.00333*T
IMPRIMIR T, CE
FINAL
CE 6.29 + 0.00140*T
IMPRIMIR FUERA DE RANGO
F
F
F
V
V
V
-
UNMSM
Laboratorio de Programacin y Computacin - MATLAB
1. HAGA UN PROGRAMA EN MATLAB QUE CALCULE LA CAPACIDAD CALORFICA (CALORAS/GRADO. MOL) DEL NQUEL A LA TEMPERATURA T EN GRADOS KELVIN
SABIENDO QUE:
ESTADO CAPACIDAD CALORFICA RANGO DE
A PRESION CONSTANTE TEMPERATURAS (K)
CRISTALINO, 4.26 + 0.00640*T 273 - 626
CRISTALINO, 6.99 + 0.000905*T 626 - 1725
LQUIDO 8.55 1725 - 1903
2. ESCRIBA UN PROGRAMA EN MATLAB QUE LEA UN DATO CORRESPONDIENTE AL pH DE CIERTA SOLUCIN E IMPRIMA SI EL pH DE STA ES CIDO, NEUTRO BSICO.
EL PROGRAMA SLO ACEPTAR QUE EL DATO INGRESADO EST EN EL RANGO DE 1 A
14, DE LO CONTRARIO IMPRIMIR VALOR FUERA DE RANGO.
3. ESCRIBA UN PROGRAMA EN MATLAB QUE LEA TRES DATOS Y DETERMINE CUL DE ELLOS
ES EL VALOR INTERMEDIO.
4. HAGA UN PROGRAMA QUE CALCULE EL NMERO DE REYNOLDS, GRUPO ADIMENSIONAL
APLICADO A TUBERIAS CIRCULARES, EN FLUJO DE TUBERIA LLENA, Y DETERMINE EL
TIPO DE FLUJO.
SABEMOS QUE :
Re = 4 Qv * Qv = CAUDAL (LITROS/SEG), * D = PESO ESPECFICO (A TEMPERATURA DEL LQUIDO)
D = DIMETRO INTERIOR (METROS),
= VISCOSIDAD (CENTIPOISES).
EN LA PRACTICA SE CONSIDERA UN FLUJO:
LAMINAR, SI Re < 2000
DE TRANSICION, SI 2000 Re 4000
TURBULENTO, SI Re > 4000
5. SUPONGA QUE EL ESTADO ESTABLECE UN NUEVO IMPUESTO APLICABLE A LAS EMPRESAS, EN FUNCIN A SU CAPITAL ACTIVO:
CAPITAL ACTIVO IMPUESTO ANUAL
HASTA S/100,000 1.5 %
ENTRE 100,000 Y 500,000 3.0 %
MS DE 500,000 4.0 %
HAGA UN PROGRAMA QUE CALCULE EL IMPUESTO APLICABLE DE ACUERDO AL ACTIVO DE
UNA EMPRESA.
6. ESCRIBA UN PROGRAMA QUE LEA TRES VALORES Y DETERMINE CUL DE ELLOS ES EL
MAYOR.
7. HAGA UN PROGRAMA EN MATLAB QUE CALCULE LA CAPACIDAD CALORFICA
(CALORAS/GRADO. MOL) DEL HIERRO DE ACUERDO A SU TEMPERATURA T EN GRADOS
KELVIN SABIENDO QUE:
CAPACIDAD CALORFICA RANGO DE
ESTADO A PRESION CONSTANTE TEMP. (K)
CRISTALINO, 4.13 + 0.00638*T 273 - 1041
CRISTALINO, 6.12 + 0.00336*T 1041 - 1179
CRISTALINO, 8.40 1179 - 1674
CRISTALINO, 10.0 1674 - 1803
LIQUIDO 8.15 1803 - 1873
8. ESCRIBA UN PROGRAMA QUE LEA 3 NOTAS DE TAL MODO QUE: LAS DOS PRIMERAS
TIENEN PESO DOBLE RESPECTO A LA TERCERA:
-
UNMSM
Laboratorio de Programacin y Computacin - MATLAB
2*(NOTA1 + NOTA2) + NOTA3
PROMEDIO = ---------------------------
5
DETERMINE E IMPRIMA EL PROMEDIO OBTENIDO Y SI EL ALUMNO HA SIDO APROBADO O
DESAPROBADO. NOTA MNIMA PARA APROBAR = 10.5 .
9. CIERTA PLANTA INDUSTRIAL PRODUCE CEMENTO EN SACOS Y OFRECE A SUS CLIENTES
MAYORISTAS LOS DESCUENTOS SIGUIENTES DE ACUERDO A LAS CANTIDADES
COMPRADAS:
POR LA COMPRA DE :
500 A 1000 SACOS 5 % DE DESCUENTO
1001 A 2500 SACOS 10 % DE DESCUENTO
2501 SACOS O MS 15 % DE DESCUENTO
ESCRIBA UN PROGRAMA QUE LEA EL PRECIO UNITARIO Y LA CANTIDAD COMPRADA Y
LUEGO DETERMINE LA CANTIDAD QUE SE FACTURAR POR LA COMPRA. INCLUYA EL
I.G.V.
10. CON EL OBJETO DE INVESTIGAR LA REPETIBILIDAD DE UN ANLISIS STE SE
REALIZA 3 VECES. LA VARIABLE OBTENIDA ES EL PESO DE PRECIPITADO (G).
ESCRIBA UN PROGRAMA QUE LEA LOS RESULTADOS DE LOS 3 ANLISIS.
SE ACEPTARN LOS RESULTADOS SI LOS TRES RESULTADOS ESTN DENTRO DEL RANGO:
PROMEDIO 5%
EL PROGRAMA DEBER IMPRIMIR EL PROMEDIO E INDICAR AL FINAL SI SE ACEPTA O
NO LOS RESULTADOS
11. SE TIENE LA SIGUIENTE INFORMACIN DEL CUARZO (SiO2):
CAPACIDAD CALORFICA A PRESION CTE. RANGO DE
ESTADO (CAL/GRADO MOL) TEMP. (K)
--------------------------------------------------------------------------
(1) c, CUARZO, 10.87+ 0.008712T -241200/T2 273 - 848
(2) c, CUARZO, 10.95 + 0.00550T 848 - 1873
* c = cristal
HAGA UN PROGRAMA QUE CALCULE LA CAPACIDAD CALORFICA DEL CUARZO A PARTIR
DE LA LECTURA DE SU TEMPERATURA. LUEGO IMPRIMA LA TEMPERATURA INGRESADA,
EL ESTADO EN QUE SE ENCUENTRA EL COMPUESTO Y LA CAPACIDAD CALORFICA
CALCULADA.
12. ESCRIBA UN PROGRAMA EN MATLAB QUE LEA TRES VALORES ENTEROS Y DETERMINE
CUL DE ELLOS ES EL VALOR INTERMEDIO.
13. ESCRIBA UN PROGRAMA EN MATLAB QUE LEA TRES VALORES REALES. EL PROGRAMA
DEBER DETERMINAR SI LOS VALORES LEDOS FORMAN UN TRINGULO.
14. ESCRIBA UN PROGRAMA EN MATLAB QUE LEA TRES CALIFICACIONES, DETERMINE EL
PROMEDIO Y FINALMENTE IMPRIMA:
LAS TRES CALIFICACIONES
EL PROMEDIO OBTENIDO
LAS PALABRAS :
APRENDIZAJE DEFICIENTE SI PROMEDIO < 10.5
APRENDIZAJE REGULAR SI 10.5 PROMEDIO < 13
APRENDIZAJE BUENO SI 13 PROMEDIO < 15
APRENDIZAJE EXCELENTE SI 15 PROMEDIO 20
EL PROGRAMA SLO ACEPTAR VALORES ENTRE 0 Y 20, DE LO CONTRARIO, IMPRIMIR
CALIFICACIN INVLIDA.