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
Ayuda con ejercicio TP
Autor Mensaje
Matifradus Sin conexión
Empleado de Fotocopiadora
Sin estado :(
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 25
Agradecimientos dados: 2
Agradecimientos: 0 en 0 posts
Registro en: Mar 2010
Mensaje: #1
Ayuda con ejercicio TP Trabajo practico Paradigmas de Programación
Buenas, tengo una lista de productos:
martillo = ("martillo","Stanley",5.0)
guante = ("guante",”generico",1.0)
linterna = ("linterna","Duracel",2.0)
casco = ("casco","MSA",6.0)

de cada producto obtengo el iva de dos formas:
1) precioDeProductoConIVA (_, _, precioDeProducto) = 1.21 * precioDeProducto -- que me muestra solo el precio final

2) ivaAplicadoAProducto (nombreDeProducto, marcaDeProducto, precioDeProducto) = (nombreDeProducto, marcaDeProducto, precioDeProductoConIVA (nombreDeProducto, marcaDeProducto, precioDeProducto) ) -- que me muestra la tupla completa con el iva incluido..

Ahora la pregunta es si yo tengo una lista de productos [martillo,guante,casco] como logro sacar la suma del precio con iva de todos los productos de la lista en forma recursiva y también por orden superior?
tendría que armar la función precioDeProductosConIVA [martillo,guante,casco] pero no logro que me compile, alguna ayuda ?

muchas gracias.
26-04-2015 17:24
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Martin. Sin conexión
Presidente del CEIT
Enjoy it !
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.380
Agradecimientos dados: 88
Agradecimientos: 296 en 137 posts
Registro en: Oct 2011
Mensaje: #2
RE: Ayuda con ejercicio TP
Qué intentaste hacer?.
Probaste haciendo map (función de orden superior) de algo y aplicarlo a la lista?.

En el spoiler tenes la solución con Orden Superior.
Spoiler: Mostrar


listaIvaProductos lista = sum(map precioDeProductoConIVA lista)



[Imagen: jQJfyBGh9SOmZ.png]
26-04-2015 20:20
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Matifradus Sin conexión
Empleado de Fotocopiadora
Sin estado :(
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 25
Agradecimientos dados: 2
Agradecimientos: 0 en 0 posts
Registro en: Mar 2010
Mensaje: #3
RE: Ayuda con ejercicio TP
Gracias Martin, igualmente a ese lo logre sacar, el tema que no me sale encarar la recursividad esa..

otra cosa, por listas de comprensión tambien se podria encarar no? haciendo algo como:

precioDeProductosConIVA2 lista = sum [ x | x <- precioDeProductoConIVA lista ] ?

aunque probando esta ultima forma no me compila, alguna ayudita? =)

Slds
26-04-2015 22:57
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Martin. Sin conexión
Presidente del CEIT
Enjoy it !
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.380
Agradecimientos dados: 88
Agradecimientos: 296 en 137 posts
Registro en: Oct 2011
Mensaje: #4
RE: Ayuda con ejercicio TP
Lo que sucede es que lo estás haciendo al reves.

Vos pensa que lo que está a la izquierda de la guarda es lo que te va a "insertar" en la nueva lista, y lo otro es el elemento de la lista.
Por ende para que sea de forma correcta tendría que ser así:

precioDeProductosConIVA2 lista = sum [ precioDeProductoConIVA x | x <- lista ]

Esto lo que hace es a cada elemento X de la lista le aplica el la función.

[Imagen: jQJfyBGh9SOmZ.png]
26-04-2015 23:08
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Martin. recibio 1 Gracias por este post
Matifradus (26-04-2015)
Buscar en el tema
Enviar respuesta 




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