Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
[pdep] Usando composición
Autor Mensaje
z423 Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 160
Agradecimientos dados: 74
Agradecimientos: 2 en 2 posts
Registro en: Mar 2015
Mensaje: #1
[pdep] Usando composición Ejercicios Paradigmas de Programación
Hola! Resolví el siguiente ejercicio en forma correcta, lo que me falta es ponerlo como composición.
EJERCICIO:
Definir, usando composición, la función haceFrioF, que indica si una temperatura expresada en grados Fahrenheit es fría. Decimos que hace frío si la temperatura es menor a 8 grados Celsius.
Ejemplo:
Main> haceFrioF 50
False
Nota: Asumir que ya existe una función fahrToCelsius que convierte una temperatura Fahrenheit en Celsius. Usarla sin definirla.

RESOLUCIÓN: haceFrioF grados = (fahrToCelsius grados) <8
Objetivos que no se cumplieron:
haceFrioF debe usar composición
15-04-2017 21:18
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
valtimore Sin conexión
Empleado de Fotocopiadora
Que bruto póngale 0
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 25
Agradecimientos dados: 31
Agradecimientos: 8 en 8 posts
Registro en: Jun 2015
Mensaje: #2
RE: [pdep] Usando composición
Para hacer composición deberías hacer algo así:

haceFrioF grados = grados <8

Main > haceFrioF (fahrToCelcius 50)

Pensalo como en matemáticas, composición de funciones es hacer f(g(x)). En este caso, vos a la función haceFrioF deberías pasarle el resultado de la aplicación de la función fahrToCelcius.
(Este mensaje fue modificado por última vez en: 15-04-2017 23:38 por valtimore.)
15-04-2017 23:37
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
z423 Sin conexión
Campeon del cubo Rubik
Sin estado :(
****

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 160
Agradecimientos dados: 74
Agradecimientos: 2 en 2 posts
Registro en: Mar 2015
Mensaje: #3
RE: [pdep] Usando composición
Lo que decís funciona, pero al igual que la resolución que puse yo no usa composición. Ejecute lo que pusiste en mumuki y dice:
Objetivos que no se cumplieron:
haceFrioF debe utilizar fahrToCelsius
haceFrioF debe usar composición
15-04-2017 23:55
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
valtimore Sin conexión
Empleado de Fotocopiadora
Que bruto póngale 0
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 25
Agradecimientos dados: 31
Agradecimientos: 8 en 8 posts
Registro en: Jun 2015
Mensaje: #4
RE: [pdep] Usando composición
Ahí estuve googleando, en Haskell hay un operador que representa la composición de funciones, que es el "." (punto)

Probá haciendo

Main > (haceFrioF . fahrToCelsius) 50
16-04-2017 00:09
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Desert69 Sin conexión
Presidente del CEIT
Sin estado :( / "Anarquia...
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 2.477
Agradecimientos dados: 230
Agradecimientos: 346 en 207 posts
Registro en: Jun 2008
Mensaje: #5
RE: [pdep] Usando composición
Eso.

"Usar composición" en Haskell significa "usar el operador .", que es la función que compone funciones. `a.b` es equivalente a `a (b params)`.


Lo que vos tenés que resolver es haceFrioF, usando composición. Te dicen que haceFrioF si la temperatura que recibís es mayor a 8 grados Celsius, pero que la temperatura la recibís en Fahrenheit, y que tenés una función que convierte de Fahrenheit a Celsius.

Si la temperatura estuviera en la misma escala que te pidieron la regla (digamos, si te dieran temperaturas Celsius), ¿cómo resolverías un haceFrioC que es verdadero si la temperatura celsius que recibe es menor a 8 grados?

Teniendo eso, y teniendo una función que convierte una escala a la otra, ¿se te ocurre de qué modo podés _engancharlas_ para resolver el problema original?

[Imagen: a2.php]
[Imagen: 971aa6599664453c05cb3e42d58bbc0eo.jpg]
16-04-2017 03:35
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Desert69 recibio 1 Gracias por este post
papa_caco (21-03-2018)
fatiilluch Sin conexión
Empleado de Fotocopiadora
Si atas un hilo a tu dedo se p...
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 35
Agradecimientos dados: 113
Agradecimientos: 6 en 4 posts
Registro en: Mar 2016
Mensaje: #6
RE: [pdep] Usando composición
la respuesta a ese ejercicio es:

haceFrioC temp = temp < 8
haceFrioF = haceFrioC.fahrToCelsius
31-01-2018 13:25
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)