PDA

Ver la versión completa : necesito ayuda plis :(



sstrellita:)
21-01-2010, 19:06
olaa soy una novata en esto curso el 3 quimestre de ingenieria en sistemas,mi problema es q mi profe me mando a hacer un programa q resuelva el siguiente ejercicio pero yo no le veo ni pies ni cabeza y ya estoy muy estresada por q me qda poco tiempo y aun no se ni por donde empezar por eso vengo pidiend auxilioooooooo

el ejercicio es el iguiente se q tengo q sacar las ecuaciones pero a pues me estoy arrepintiendo de seguir esta carrera

en un taller,trabajando 45 horas semanales,se pueden fabricar tres clases de productos :A,B,C,cuyos precios de venta son de 4,12 y 3 dolares respectivamente.en el taller no se puede fabricar mas de una sola clase de articulos a la vez,a un nivel de produccion de 50,20 y 75 por hora respectivamente(en forma no simultanea).si las ventas posibles ascienden a un maximo de 400 unidades de A,500 unidades de B y 1500 unidades de C,calcular las cantidades q se deben producir de cada articulo para maximizar los ingresos.

quiero hacerlo en el vb
PD:no se si estara bien postear aqui pero ia lo hize si esta mal disculpenme si
:eek::eek::eek::eek::eek::eek::eek::eek::eek::eek: :eek::eek::eek::eek::eek::eek::mad::mad:

sstrellita:)
21-01-2010, 19:09
auxilioooooooooooooooooooooooooooooooooooooooooooo ooooooooooooooooo :( :( :(

Fruit
21-01-2010, 21:49
Vaya......

Marchi
22-01-2010, 16:34
Hola sstrellita:),

Podrías usar simplex o greedy para resolver ese problema. Si querés en la sección de descargas hay un buen libro (Introduction to Algorithms de Cormen) donde se explica perfectamente la estrategia greedy.

Tenía el post casi listo antes, pero tuve un bajon de tensión y se perdió, así que ahora solo te pongo un poco de pseudocodigo.




//datos del problema
int cant //cantidad de tipos de productos
int horas //horas de producción
int precXuni[cant] //precio de cada unidad del producto
int uniXhora[cant] //cantidad de unidades producidas por hora
int limprod //limite de unidades de produccion
//terminan datos del problema

int ingresos //dinero ganado en la cantidad de horas fijada en horas
int ingXhora[cant] //ingreso por hora de produccion
int indices[cant]
int limhoras[cant] //limite de produccion pero considerado en horas
//suponiendo que el limite en unidades es multiplo
//de la cantidad de unidades producidas por hora

for i = 1 to cant
ingXhora[i] = precXhora[i] * uniXhora[i]
indices[i] = i
limhoras[i] = limprod[i] / uniXhora[i]
rof

//se ordena de forma descendente segun los valores de ingXhora
//al arreglo indices, de esta forma, para acceder al i-esimo elemento
//ordenado de ingXhora se escribe ingXhora[indices[i]]
ordena(ingXhora,indices)

for i = 1 to cant
if horas >= limhoras[i]
horas = horas - limhoras[i]
ingresos = ingresos + limprod[i] * precXuni[i]
else
ingresos = ingresos + horas * precXuni[i]
break
fi
rof

show ingresos


No es mucho trabajo pasarlo a vb, pero cualquier problema avisa.


Saludos

sstrellita:)
23-01-2010, 22:16
Hola sstrellita:),

Podrías usar simplex o greedy para resolver ese problema. Si querés en la sección de descargas hay un buen libro (Introduction to Algorithms de Cormen) donde se explica perfectamente la estrategia greedy.

Tenía el post casi listo antes, pero tuve un bajon de tensión y se perdió, así que ahora solo te pongo un poco de pseudocodigo.




//datos del problema
int cant //cantidad de tipos de productos
int horas //horas de producción
int precXuni[cant] //precio de cada unidad del producto
int uniXhora[cant] //cantidad de unidades producidas por hora
int limprod //limite de unidades de produccion
//terminan datos del problema

int ingresos //dinero ganado en la cantidad de horas fijada en horas
int ingXhora[cant] //ingreso por hora de produccion
int indices[cant]
int limhoras[cant] //limite de produccion pero considerado en horas
//suponiendo que el limite en unidades es multiplo
//de la cantidad de unidades producidas por hora

for i = 1 to cant
ingXhora[i] = precXhora[i] * uniXhora[i]
indices[i] = i
limhoras[i] = limprod[i] / uniXhora[i]
rof

//se ordena de forma descendente segun los valores de ingXhora
//al arreglo indices, de esta forma, para acceder al i-esimo elemento
//ordenado de ingXhora se escribe ingXhora[indices[i]]
ordena(ingXhora,indices)

for i = 1 to cant
if horas >= limhoras[i]
horas = horas - limhoras[i]
ingresos = ingresos + limprod[i] * precXuni[i]
else
ingresos = ingresos + horas * precXuni[i]
break
fi
rof

show ingresos


No es mucho trabajo pasarlo a vb, pero cualquier problema avisa.


Saludos

no tienes las respuestas quiero compaarlas,aunq tu codigo fue de gran ayuda besitos;)

Marchi
23-01-2010, 23:20
A ver, tenemos que:



precios = [4,12,3]
prodXh = [50,25,75]
precXh = [200,240,225]
limprod = [400,500,1500]
limhora = [8,25,20]

Elegimos en primer lugar el segundo producto por tener el precio por hora mas alto y en segundo lugar el tercer producto.
Como queremos la produccion de una semana (45hs) usando 25 hs de produccion del segundo producto y 20 del tercer producto completamos el tiempo total de produccion.

ingresos = 240 * 25 + 225 * 20 = 10500



Saludos