Anda di halaman 1dari 4

TALLER I

Fundamentos de Programación Julián Andrés Rodas Laverde

El Taller debe ser realizado máximo de dos personas y entregada el 03-03-2018


vía correo electrónico a la dirección julrod_70@yahoo.com. El nombre del archivo
debe ser Apellido1Apellido2T1

El - o los - archivo(s) entregado(s) deben llevar un encabezado en el que va


escrito como comentario el nombre, código de ambos estudiantes asi:

;**************************
;* Integrante 1:
;* **** Nombre:
;* **** Código:
;* Integrante 2:
;* **** Nombre:
;* **** Código:
;* Archivo
;* **** Nombre:
;* **** fecha de creación:
;* **** fecha de última modificación:

Puntos a desarrollar

1. (0,5 puntos) Realizar estos ejercicios en Scheme - Pasar a Notación


Prefija -

1) 18 - { 2 + [ 9 - ( 6 - 4 ) - 5 ] }
2) ( 4 + 8 - 3 + 9 ) - 4 - ( 4 + 7 - 3 - 2 ) + ( 12 + 5 - 2 )
3 ) 15 - { 2 - [ 9 + ( 5 - 1 ) - ( 2 + 8 - 9 ) + 6 ] - 7 } +8
4) { 12 + 12 - [ 5 + 1 - 2 + ( 2 - 4 + 8 - 2 )] - 3} - 3
5) 26 + { 5 - [ 1 - ( 4 - 2 ) + 7 ] + ( 6 - 1 + 3 ) } + 4
6) ( 4 - x + 2 ) - [ 1 - ( 2 + x - 1 ) - y ] + 3 - ( 2 + y + 3 )
7) ( 15 - 3 ) - { 2 - [ 5 - ( 8 - 7 + 1 ) + 6 - 2 ] + 4 }

2. (0,5 puntos) Construir un programa que calcule el índice de masa corporal


de una persona (IMC = peso [kg] / altura2[m]) e indique el estado en el que
se encuentra esa persona en función del valor de IMC:
TALLER I
Fundamentos de Programación Julián Andrés Rodas Laverde

Valor de IMC Diagnóstico


< 16 Criterio de ingreso en hospital
de 16 a 17 infrapeso
de 17 a 18 bajo peso
de 18 a 25 peso normal (saludable)
de 25 a 30 sobrepeso (obesidad de grado I)
de 30 a 35 sobrepeso crónico (obesidad de grado
II)
de 35 a 40 obesidad premórbida (obesidad de
grado III)
>40 obesidad mórbida (obesidad de grado
IV)

3. (0,5 puntos) Tomando como base los resultados obtenidos en un


laboratorio de análisis clínicos, un médico determina si una persona tiene
anemia o no, lo cual depende de su nivel de hemoglobina en la sangre, de
su edad y de su sexo. Si el nivel de hemoglobina que tiene una persona es
menor que el rango que le corresponde, se determina su resultado como
positivo y en caso contrario como negativo. La tabla en la que el medico se
basa para obtener el resultado es la siguiente:

Realice un programa es scheme que le imprima el resultado del examen al


doctor.

4. (0,5 puntos) Dado el monto de una compra calcular y mostrar el descuento


considerando: a) descuento es 20% si el monto es mayor a 200 pesos, b)
TALLER I
Fundamentos de Programación Julián Andrés Rodas Laverde

descuento es 10% si el monto es mayor o igual a 100 pesos y menor o igual


a 200 pesos, y c) no hay descuento si el monto es menor a 100 pesos.

5. (0,5 puntos) Escribir un programa que dado un número del 1 a 7 escriba el


correspondiente nombre del día de la semana.

6. (0,5 puntos) Averiguar si dados dos números, uno es divisor de otro.

7. (0,5 puntos) Un almacén de cadena tiene como política etiquetar los


productos con el precio y la fecha en que son puestos en venta. Si han
pasado tres semanas y el producto no ha sido vendido entonces el producto
debe pasar a la sesión de descuentos. Si el producto tiene 3 semanas el
descuento es del 25 %, si han pasado 4 semanas el producto tiene el 50%
de descuento; a la quinta semana el producto tiene el 75% de descuento
(es el máximo descuento que se puede hacer).

Desarrolle un programa en scheme llamado nuevo-precio, el cual toma


como entrada el precio inicial del producto y el número de semanas
transcurrido desde que se puso el producto a la venta. El programa debe
retornar el nuevo precio del producto.

8. (0,5 puntos) Una empresa textil, realizó un estudio del rendimiento de sus
trabajadores; como resultado de esa investigación se llegó a las siguientes
conclusiones:

 Entre las 6:00 y las 10:00 cada trabajador produce 30 prendas por hora,
 Entre las 10:01 y las 14:00 cada trabajador produce 40 prendas por hora,
 Entre las 14:01 y las 18:00 cada trabajador produce 46 prendas por hora.

Diseñe e implemente una función en sheme que tome como entrada la hora
(represente la hora como un número entre 1 y 24) y la cantidad de
trabajadores. La función debe retornar la cantidad de prendas que la
empresa textil produce en esa hora, dado el número de trabajadores.

9. (0,5 puntos) Desarrolle en scheme la función llamada suma-prod la cual


tiene como entrada tres números, si el primer número es negativo, entonces
el programa calcula el producto de las tres entradas, en el caso contrario el
programa calcula la suma de los tres números.

10. (0,5 puntos) Escribir en scheme un programa que tome como entrada un
número que representa un año (entrada). La función debe calcular si el año
TALLER I
Fundamentos de Programación Julián Andrés Rodas Laverde

es bisiesto y retornar el símbolo: año bisiesto. Si el año no es bisiesto


entoces la función debe retornar el símbolo: 'año_NO_bisiesto

Nota: Podemos decir que un año es bisiesto si es múltiplo de 4, excepto


aquellos años que son múltiplos de 100. En el caso en que el año es
múltiplo de 100, decimos es bisiesto si es múltiplo de 400. Ejemplo: si la
entrada es el año 1900 (múltiplo de 100), la salida es 'año_NO_bisiesto
dado que no es múltiplo de 400.

Si la estrada es el 2004, la salida es 'año_bisiesto porque es múltiplo de 4.


Si la estrada es el 2000, la salida es 'año_bisiesto porque es múltiplo de
400.