#!/usr/bin/perl -w use strict; my $demanda_diaria = 200_000/240; my $Coste_compra_A = 200_000 * 102; my $Coste_compra_B = (200_000 + 8 * $demanda_diaria) * 95; my ($QA, $QB, $countA, $countB, $count0); my ($Coste_pedido_A, $Coste_pedido_B, $Coste_inventario_A, $Coste_inventario_B); my ($Coste_total_A, $Coste_total_B); my $CMIN = 9e99; my $CMINA = 9e99; my $CMINB = 9e99; my ($unidades, $sol, $uniA, $uniB); for my $Q (1..200_000){ $QA = $QB = $Q; $Coste_pedido_A = 2500 * 200_000/$QA; $Coste_pedido_B = 15000 * (200_000+8*$demanda_diaria)/$QB; $Coste_inventario_A = 1.35 * 102 * $QA/2; $Coste_inventario_B = 1.35 * 95 * ($QB + 8*$demanda_diaria)/2; $Coste_total_A = $Coste_compra_A + $Coste_pedido_A + $Coste_inventario_A; $Coste_total_B = $Coste_compra_B + $Coste_pedido_B + $Coste_inventario_B; if ($Coste_total_A < $CMINA){ $CMINA = $Coste_total_A; $uniA = $Q; } if ($Coste_total_B < $CMINB){ $CMINB = $Coste_total_B; $uniB = $Q; } if ($Coste_total_A > $Coste_total_B){ # print "B"; $countB++; if ($Coste_total_B < $CMIN){ $CMIN = $Coste_total_B; $unidades = $Q; $sol = "B"; } }elsif ($Coste_total_A < $Coste_total_B){ # print "A"; $countA++; if ($Coste_total_A < $CMIN){ $CMIN = $Coste_total_A; $unidades = $Q; $sol = "A"; } }else{ print "INDIFERENTE en $Q\n"; $count0++; } } print "A = $countA\n"; print "B = $countB\n"; $QA = sqrt(2*200_000*2500/(1.35*102)); $QB = sqrt(2*(200_000+8*$demanda_diaria)*15000/(1.35*95)); print "QA = $QA\n"; print "QB = $QB\n"; print "Solución: Pídase $unidades unidades de $sol cada ",$unidades/$demanda_diaria," días\n"; print "período corto... luego si se pide B, ", int($QB+.5), " unidades, cada ", $QB/$demanda_diaria, " días\n"; print "... la diferencia es significativa en el pedido óptimo:\n"; print "A -> $uniA y B -> $uniB, la diferencia es de ", $CMINB-$CMINA, " a favor de A\n"; print "(Si el período es corto, se podría alargar hasta pedir $countA unidades de A)\n"; __END__ El departamento de compras de una empresa tiene que tomar decisiones sobre la adjudicación de un pedido, teniendo en cuenta los siguientes datos: Cuentan con dos proveedores A y B. El precio ofertado por el proveedor A es de 102 u.m./unidad. El proveedor B se destaca por tener buenos precios. Durante bastante tiempo se ha trabajado con él, pero se han enfriado las relaciones debido a su falta de fiabilidad tanto en calidad como en fechas de entrega. Su historial demuestra que los incumplimientos de calidad suponen 5 días más de espera cada vez que se detectan y que las entregas suelen presentar un retraso medio de 3 días por pedido, por lo que podríamos admitir que, para trabajar con este proveedor tendríamos que hacerlo con un stock de seguridad de 8 días. El precio ofertado por este proveedor es de 95 u.m./unidad. Se tiene, además, la siguiente información: Días de trabajo anuales, 240; Consumo anual de piezas, 200.000; Coste unitario del stock en términos anuales, 135% del precio ofertado en cada caso y Costes de pedido, 2500 u.m./pedido proveedor A y 15000 u.m./pedido para el proveedor B. De acuerdo con estos datos y teniendo en cuenta el lote económico de compra, ¿cuál sería la decisión correcta de adjudicación teniendo en cuenta el coste integral que se genera en cada caso?