Está en la página 1de 11

INSTITUTO POLITÉCNICO

NACIONAL
Unidad Profesional Interdisciplinaria
De Biotecnología

Carrera:
Ingeniería Farmacéutica

Unidad de Aprendizaje:
Programación

Docentes:

-Alejandra Valdez Lozano


-Víctor Adrián Quiroz Arán

Equipo 3
Integrantes:
- Frausto Sánchez Karla
- Guerrero Miranda Evan Yamil
- Hernández Arango Abril Citlali

GRUPO:
1FM2
Tarea If
Fecha de entrega:
25/Abril/2021
1. Concluir el ejercicio de clase

ENUNCIADO

Elabore un programa que solicite al usuario los parámetros necesarios para calcular el
IMC de un adulto y le diga el tipo de salud que posee, basándose en el valor del IMC.
Índice de masa corporal del adulto o IMC
• Si su IMC es inferior a 18.5, está dentro de los valores correspondientes a “bajo peso”.
• Si su IMC es entre 18.5 y 24.9, está dentro de los valores “normales” o de peso
saludable.
• Si su IMC es entre 25.0 y 29.9, está dentro de los valores correspondientes a
“sobrepeso”.
El IMC se calcula de la siguiente forma: el peso en kilogramos entre la estatura en metros
al cuadrado.

DIAGRAMA DE FLUJO
ALGORITMO
ENTRADAS: peso, estatura
PROCESO: IMC = peso/estarura2
Si IMC < 18.5
“bajo peso”
Sino 18.5<=IMC<=24.9
“peso saludable”
Sino 25<=IMC<=29.9
“sobrepeso”
SALIDAS: “bajo peso” o “peso saludable” o
“sobrepeso”
CODIFICACIÓN

%Elabore un programa que solicite al usuario los parámetros


necesarios para
%calcular el IMC de un adulto y le diga el tipo de salud que
posee,
%basándose en el valor del IMC
clc
clear all
peso=input('Ingrese el valor de su peso:');
Estatura=input('Ingrese el valor de su estatura:');
IMC=Peso/(Estatura^2);
fprintf('Su IMC es %g\n',IMC)
if IMC>18.5
disp('Usted tiene Bajo peso')
elseif 18.5<=IMC<=24.9
disp('Usted tiene un Peso saludable')
elseif 25<=IMC<=24.9
disp('Usted tiene Sobrepeso')
end

EJECUCIÓN
2. Realizar el siguiente ejercicio
ENUNCIADO
Teclee el siguiente archivo m:
1 fun=input('escriba la función que desea .............: ','s');
2 f=inline(fun);
3 n=input('¿cuál es el orden de la ..........?: ');
4 syms x
5 der=diff(f(x),n);
6 disp('...........')
7 disp(der)
(a) Inserte, en la primera línea, un comentario que describa lo que hace el programa
y qué datos requiere del usuario para su funcionamiento.
(b) Complete los mensajes, colocando sobre las líneas punteadas la(s) palabra(s)
adecuada(s), de modo que quede claro para el usuario.
(c) Escriba un comentario delante de cada línea que explique lo que está ocurriendo.

DIAGRAMA DE FLUJO

Inicio

ALGORITMO
ENTRADAS: Fun=función que el usuario
Fun=función
que el usuario
considere
considere
PROCESO: 𝑓 𝑥 ← 𝐹𝑢𝑛𝑐𝑖𝑜𝑛𝑒𝑠 𝑒𝑛 𝑙𝑎
𝑙𝑖𝑛𝑒𝑎 𝑑𝑒 𝑙𝑎 𝑓𝑢𝑛𝑐𝑖ó𝑛 𝑑𝑒𝑙 𝑢𝑠𝑢𝑎𝑟𝑖𝑜
𝑛 ← 𝑉𝑎𝑙𝑜𝑟 𝑑𝑒 n que el usuario ingrese.
𝑂𝑐𝑢𝑝𝑎𝑟 𝑒𝑙 𝑣𝑎𝑙𝑜𝑟 𝑑𝑒 𝑓 𝑥 𝑦 𝑛
𝑑𝑒𝑟 ← 𝐶𝑎𝑙𝑐𝑢𝑙𝑎 𝑙𝑎𝑠 𝑑𝑖𝑓𝑒𝑟𝑒𝑛𝑐𝑖𝑎𝑠
𝑓 𝑥 ← 𝐹𝑢𝑛𝑐𝑖𝑜𝑛𝑒𝑠 𝑒𝑛 𝑙𝑎
𝑙𝑖𝑛𝑒𝑎 𝑑𝑒 𝑙𝑎 𝑓𝑢𝑛𝑐𝑖ó𝑛 𝑑𝑒𝑙 𝑢𝑠𝑢𝑎𝑟𝑖𝑜
𝑒𝑛𝑡𝑟𝑒 𝑓 𝑥 𝑦 𝑛
𝑛 SALIDAS: El resultado de la integral
← 𝑉𝑎𝑙𝑜𝑟 𝑑𝑒 n que el usuario
ingrese.
𝑂𝑐𝑢𝑝𝑎𝑟 𝑒𝑙 𝑣𝑎𝑙𝑜𝑟 𝑑𝑒 𝑓 𝑥 𝑦 𝑛
𝑑𝑒𝑟 ← 𝐶𝑎𝑙𝑐𝑢𝑙𝑎 𝑙𝑎𝑠 𝑑𝑖𝑓𝑒𝑟𝑒𝑛𝑐𝑖𝑎𝑠
𝑒𝑛𝑡𝑟𝑒 𝑓 𝑥 𝑦 𝑛

El resultado de
la integral

Fin
CODIFICACIÓN

%En este programa se encontrara la solución para la siguiente


función
1 clc %Limpia la pantalla
2 clear all %Borra todas las variables
3 fun=input(‘escriba la función f(x) entre comillas:’,’s’); %Se
pide insertar la función
4 f=inline(fun);
5 n=input(‘¿cuál es el orden de la función?:');
6 syms x
7 der=diff(f(x),n);
8 disp((‘el resultado de la integral es') %El programa te da
los resultados
9 disp(der)

EJECUCIÓN
ENUNCIADO

3. Escriba un programa que ordene, en forma ascendente, tres


números diferentes dados por el usuario.

ALGORITMO
ENTRADAS: a,b,c
DIAGRAMA DE FLUJO PROCESO:
Si a<b
Sino a>c
Inicio Sino b>c
No b>c
Sino a>c
SALIDAS: “b,a,c”, “c,b,a”,
a,b,c “b,c,a”,”a,b,c”,”c,a,b”, “a,c,b”

Si No
a<b

Si No
𝑏>𝑐
Si No
a>c

a,b,c
Si No Si No
b>c b,a,c a>c

c,a,b a,c,b
c,b,a b,c,a

Fin
CODIFICACIÓN

%Programa que ordena, en forma ascendente,3 números diferentes


clear all
clc
a=input('Ingrese el valor de a:');
b=input('Ingrese el valor de b:');
c=input('Ingrese el valor de c:');
if a>b
if a>c
if b>c
fprintf('El orden ascendente de los números:%g,%g,%g',c,b,a)
else
fprintf('El orden ascendente de los números:%g,%g,%g',b,c,a)
end
else
fprintf('El orden ascendente de los números:%g,%g,%g',b,a,c)
end
elseif b>c
if a>c
fprintf('El orden ascendente de los números:%g,%g,%g',c,a,b)
else
fprintf('El orden ascendente de los números:%g,%g,%g',a,c,b)
end
fprintf('El orden ascendente de los números:%g,%g,%g',a,b,c)
end

EJECUCIÓN
ENUNCIADO
4. Elabore un programa en el cual se le pida al usuario un número x y
determine si pertenece al dominio de la función

1
f 𝑥 =
𝑥 2 +2𝑥−3

En caso de pertenecer al dominio, grafique la función únicamente en


su dominio, en caso contrario que despliegue el mensaje: El punto no
pertenece al dominio de la función.

ALGORITMO
ENTRADAS: x
DIAGRAMA DE FLUJO PROCESO:
Inicio
Si x>1
1
f 𝑥 =
𝑥 2 +2𝑥−3

x SALIDAS: “Si pertenece al dominio de una


función”, “No forma parte de la función”

Si No
x>-3

Si No
x>1 “𝑁𝑜 𝑓𝑜𝑟𝑚𝑎 𝑝𝑎𝑟𝑡𝑒
𝑑𝑒 𝑙𝑎 𝑓𝑢𝑛𝑐𝑖ó𝑛"

“𝑁𝑜 𝑓𝑜𝑟𝑚𝑎 𝑝𝑎𝑟𝑡𝑒


1 𝑑𝑒 𝑙𝑎 𝑓𝑢𝑛𝑐𝑖ó𝑛"
f 𝑥 =
𝑥 2 +2𝑥−3

“𝑆𝑖 𝑝𝑒𝑟𝑡𝑒𝑛𝑒𝑐𝑒 𝑎𝑙
𝑑𝑜𝑚𝑖𝑛𝑖𝑜 𝑑𝑒 𝑙𝑎 𝑓𝑢𝑛𝑐𝑖ó𝑛"

Fin
CODIFICACIÓN

%Programa que determina si el valor de “x” ingresado, pertenece al dominio


%de la función
clear all
clc
x=input('Ingrese el valor de “x”:');
if x>=3
if x>1
disp('Si pertenece al dominio de la función')
x=-5:1:20;
y=((x>-3)&(x>1)).*(1./sqrt(x.^2+2*x-3));
plot(x,y);title('Gráfica del dominio de la función 1/sqrt(x.^2+2*x-
3)');xlabel('x');ylabel ('y');grid
else
disp('El punto no forma parte del dominio de la función')
end
else
disp('El punto no forma parte del dominio de la función')
end

EJECUCIÓN
ENUNCIADO
5. La suma de la serie geométrica 𝟏 + 𝒓 + 𝒓𝟐 + 𝒓𝟑 + 𝒓𝟒 + ⋯ + 𝒓𝒏 se aproxima al
𝟏
límite cuando 0 < r < 1 y n →∞.
𝟏−𝒓
Elabore un programa que calcule el valor de la serie para los números r y n
proporcionados por el usuario. El programa debe verificar que 0 < r < 1, en caso
de que r no cumpla se debe desplegar un mensaje que diga que la serie diverge;
por otro lado, n debe ser un número entero positivo, de no serlo, dígale al usuario
que no se puede calcular la serie para el valor de n dado.

ALGORITMO
ENTRADAS: r, n, resultado=1
PROCESO:
Si r<1, r>0 n>0 dif==0
resultado = resultado + (rˆi)
Sino r>1, r<0
DIAGRAMA DE FLUJO Inicio Sino n<0, dif ~=0
SALIDAS: “La suma de la seria geométrica es: …”
“El valor asignado a r, debe estar entre 0 y 1“,
“No se puede calcular la serie para el valor de n
r, n, dado, n debe ser un número entero positivo”
resultado=1

Si r<1, r>0 No
n>0
dif==0

resultado =
resultado + (rˆi)
Si r>1, No
r<0

“El valor asignado a


r, debe estar entre 0 y 1 Si n<0, dif No
" ~=0
“La suma de la seria
geométrica es: …”

“No se puede calcular la


serie para el valor de n
dado, n debe ser un
número entero positivo”

Fin
CODIFICACIÓN

%Programa que saca la suma de la serie geometrica 1+r+r^2+r^3+r^4+...+r^n


%dependiendo de los valores a ingresar siempre y cuando 0<r<1 y n
%Pertenezca a un numero entero positivo
clear all
clc
r=input('Ingresa un valor para r:');
n=input('Ahora ingresa un valor para n:');
red=round(n);
dif=n-red;
resultado=1
if r<1 && r>0 && n>0 && dif==0
for i=1:n
resultado=resultado+(r^1);
end
fprintf('La suma de la serie geometrica es :%g \n',resultado)
else
if r>1 || r<0
fprintf ('El valor asignado r debe estar entre 0 y 1\n')
end
if n<0 || dif ~=0
fprintf('No se puede calcular la serie para el valor de n dado,n debe
ser un número entero positivo \n')
end
end

EJECUCIÓN

También podría gustarte