Foros del Web » Programando para Internet » PHP »

Como encontrar la mejor combinacion problema matematico

Estas en el tema de Como encontrar la mejor combinacion problema matematico en el foro de PHP en Foros del Web. Hola como estan amigos, Vereis tengo el siguiente problema, tengo una lista de precios: Estanteria de 5 articulos -------- 10,00€ Estanteria de 10 articulos -------- ...
  #1 (permalink)  
Antiguo 06/05/2013, 04:32
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 14 años, 3 meses
Puntos: 4
Como encontrar la mejor combinacion problema matematico

Hola como estan amigos,

Vereis tengo el siguiente problema, tengo una lista de precios:

Estanteria de 5 articulos -------- 10,00€
Estanteria de 10 articulos -------- 14,25€
Estanteria de 15 articulos -------- 20,73€
Estanteria de 35 articulos -------- 43,60€
Estanteria de 50 articulos -------- 57,30€
Estanteria de 75 articulos -------- 78,22€
Estanteria de 100 articulos -------- 93,86€

Vale ahora cada usuario puede comprar una lista de 5 mas una de 10 mas otra 5 por ejemplo y le tengo que ofrecer el mejor precio osea que la suma de estas estanterias son 20 articulos tendria que coger para que fuese mas economico dos listas de 10 para que el precio fuese 28,50 en lugar de si sumar el precio de una estanteria 5 mas otra de 5 mas una de 10 que seria 34,25.

Espero haberme explicado, manualmete es sencillo el problema esta en llevar este ejemplo al codigo y que sepa automaticamente que combinacion de listas tiene que hacer para que saque el mejor precio.

A ver si alguien se le ocurre algo.

Un saludo amigos
  #2 (permalink)  
Antiguo 06/05/2013, 05:39
 
Fecha de Ingreso: noviembre-2007
Mensajes: 382
Antigüedad: 13 años, 6 meses
Puntos: 16
Respuesta: Como encontrar la mejor combinacion problema matematico

habría que probar, a ver si me explico.

ordena las estanterías de mayor a menor
recorre las estanterías, y dentro del bucle comprueba
-si el cliente tiene mas articulos que la estanteria actual
-añadimos como combinacion más barata, el cociente de dividir los articulos del cliente entre el de la estantería actual
-el resto de esa division, son los artículos que quedan por comprobar si puede salir más barato
si el resto es mayor que cero sigues el bucle, si no, sales

por ejemplo:
tengo 335 articulos entro en el bucle
¿es mayor o igual que 100?
335/100 guardo como combinación más barata 3 estanterias de 100 y me quedan 35 articulos
¿35 es mayor o igual que 75? no, pues vuelvo a entrar
¿35 es mayor o igual que 50? no, pues vuelvo a entrar
¿35 es mayor o igual que 35? si, añado a la combinacion más barata una estanteria de 35 y como no quedan articulos fin de bucle

Última edición por manzarinaa; 06/05/2013 a las 05:48
  #3 (permalink)  
Antiguo 06/05/2013, 05:56
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 14 años, 3 meses
Puntos: 4
Respuesta: Como encontrar la mejor combinacion problema matematico

Hola manzarina gracias por tu atencion,

Si entiendo lo que me esta explicando esta cogiendo la estaria mayor para la combinacion el problema es que por ejemplo asignando este metodo si hubiese una estanteria 5 mas otra de 5 mas una de 10 en total 20 articulos tomaria una de 15 mas una 5 que serian 30,73€ la cosa es que si tomamos dos estanterias de 10 seria el precio mas bajo por que sumarian 28,50€

Ves lo que quiero decir verdad.

Un saludo amigo y gracias de nuevo
  #4 (permalink)  
Antiguo 06/05/2013, 06:09
 
Fecha de Ingreso: noviembre-2007
Mensajes: 382
Antigüedad: 13 años, 6 meses
Puntos: 16
Respuesta: Como encontrar la mejor combinacion problema matematico

Entonces lo que están mal son los precios jajajajja.

Es verdad, no me había fijado ¬¬" pues me dejas pillada.

Se me viene a la cabeza quizá algo relacionado con las "tablas de verdad", pero llevo muchos años sin usarlas y no sé si sería adecuado para el caso.

A ver si alguien nos ilumina, que a mi ya me ha dejado mal regusto.
  #5 (permalink)  
Antiguo 06/05/2013, 06:39
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 14 años, 3 meses
Puntos: 4
Respuesta: Como encontrar la mejor combinacion problema matematico

Gracias de todos modos amigo,

A ver si alguien sabe como se podria solucionar este tema.

Un saludo!!
  #6 (permalink)  
Antiguo 06/05/2013, 09:02
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 14 años, 3 meses
Puntos: 4
Respuesta: Como encontrar la mejor combinacion problema matematico

Ha nadie se le ocurre nada??
  #7 (permalink)  
Antiguo 06/05/2013, 11:47
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 11 años, 7 meses
Puntos: 25
Respuesta: Como encontrar la mejor combinacion problema matematico

a cada articulo le añades un tanto por ciento por cada cantidad. ejemplo
articulo A una unidad sale por 2€ 5 unidades 7.25 así que le aplicamos un descuento de 27.5%
articulo B ....
__________________
cada vez que aprendes algo te crees que no sabes nada
  #8 (permalink)  
Antiguo 06/05/2013, 11:49
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 13 años, 2 meses
Puntos: 2534
Respuesta: Como encontrar la mejor combinacion problema matematico

¿Discutiendo un problema de matemáticas en un foro de programación?

Creo que alguien olvidó entrar a clases de matemáticas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 06/05/2013, 13:22
 
Fecha de Ingreso: septiembre-2006
Mensajes: 139
Antigüedad: 14 años, 9 meses
Puntos: 14
Respuesta: Como encontrar la mejor combinacion problema matematico

Yo probaría un poco a la inversa.

No sé si estará bien planteado, pero lo que haría sería lo siguiente.

1. Evaluar el precio que se quiere gastar el cliente.
2. Aplicar si no recuerdo mal las reglas de divisibililidad o incluso el módulo. Si el valor máximo de artículos y su precio dividido por el precio a gastar, devuelve un resto ínfimo, evalúo ésta como posibilidad más acertada.
3. Comparo esa posibilidad con cada uno de los precios, y el que más cercano esté, evalúo los productos inmediatamente inferiores por si la suma de éstos dividido por el precio devuelve un resto menor al que aportaba la división del conjunto anterior. Así si el la suma de los productos está más acorde que la venta escojo dicha opción.

No sé si me he explicado, a veces es más complejo plasmar la idea que pensar en el concepto.

Saludos cordiales.
Francisco J.

Etiquetas: encontrar, matematico
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 05:02.