diff options
Diffstat (limited to '2023-2/E1/mitsuo')
| -rw-r--r-- | 2023-2/E1/mitsuo/p1/PruebaPedidos.txt | 1130 | ||||
| -rw-r--r-- | 2023-2/E1/mitsuo/p1/fun.cpp | 236 | ||||
| -rw-r--r-- | 2023-2/E1/mitsuo/p1/fun.hpp | 23 | ||||
| -rw-r--r-- | 2023-2/E1/mitsuo/p1/main.cpp | 5 | ||||
| -rw-r--r-- | 2023-2/E1/mitsuo/p2/PruebaProductos.txt | 168 | ||||
| -rw-r--r-- | 2023-2/E1/mitsuo/p2/fun.cpp | 186 | ||||
| -rw-r--r-- | 2023-2/E1/mitsuo/p2/fun.hpp | 16 | ||||
| -rw-r--r-- | 2023-2/E1/mitsuo/p2/main.cpp | 3 |
8 files changed, 953 insertions, 814 deletions
diff --git a/2023-2/E1/mitsuo/p1/PruebaPedidos.txt b/2023-2/E1/mitsuo/p1/PruebaPedidos.txt index 9a019f8..e526324 100644 --- a/2023-2/E1/mitsuo/p1/PruebaPedidos.txt +++ b/2023-2/E1/mitsuo/p1/PruebaPedidos.txt @@ -1,566 +1,564 @@ - REPORTE DE PRUEBA DE PEDIDOS -========================================================== - FECHA DNI CANTIDAD CODIGO PRODUCTO -21/08/2023 90365520 1 OPJ-039 -21/08/2023 77191257 5 BWD-036 -21/08/2023 69639726 3 OPT-996 -21/08/2023 11602775 4 CIM-038 -21/08/2023 32565207 6 ZWF-661 -21/08/2023 49087435 2 VDD-853 -21/08/2023 49087435 1 PJG-338 -21/08/2023 45877001 4 VVS-017 -21/08/2023 79140840 5 TMN-884 -21/08/2023 98140264 4 QHC-492 -21/08/2023 91897732 1 WLL-607 -21/08/2023 90365520 6 KWP-672 -21/08/2023 71984468 5 JJN-837 -21/08/2023 49087435 1 SJQ-827 -21/08/2023 15210391 1 HFM-021 -21/08/2023 17913944 4 IHG-413 -21/08/2023 17972674 1 UTN-601 -21/08/2023 90237332 5 PVZ-181 -21/08/2023 49087435 6 XZR-640 -21/08/2023 37110873 2 UWA-476 -21/08/2023 25171011 1 VCL-867 -21/08/2023 85949265 6 TMJ-043 -21/08/2023 85949265 2 YUQ-590 -21/08/2023 26233063 2 ZAF-449 -21/08/2023 43043986 3 TXM-139 -21/08/2023 29337157 3 ZEX-027 -21/08/2023 38913831 3 JFC-432 -21/08/2023 83505958 3 EJW-346 -21/08/2023 11602775 6 TMJ-043 -21/08/2023 45783712 3 QFR-958 -21/08/2023 17913944 5 YJD-279 -21/08/2023 81114108 4 VRR-793 -21/08/2023 81114108 5 DUG-251 -21/08/2023 55552996 1 FQG-293 -21/08/2023 50365593 1 TZY-323 -21/08/2023 57690875 5 CSZ-863 -21/08/2023 32904023 3 SAM-013 -21/08/2023 40348917 3 WZD-331 -21/08/2023 40112594 3 EBI-299 -21/08/2023 40348917 2 FLJ-040 -21/08/2023 44229880 5 HLR-109 -21/08/2023 62566305 4 TYF-885 -21/08/2023 58187172 2 VXS-438 -21/08/2023 71463316 6 QFP-254 -21/08/2023 15561764 4 RAH-420 -21/08/2023 89429489 1 VXS-438 -21/08/2023 95161027 5 TZY-323 -22/08/2023 77484838 6 YUQ-590 -22/08/2023 32821689 1 ISU-815 -22/08/2023 27912250 4 LWG-915 -22/08/2023 26290971 5 TZY-323 -22/08/2023 73535476 3 CIM-038 -22/08/2023 15210391 5 RSE-049 -22/08/2023 35584593 1 KCO-488 -22/08/2023 25171011 6 OPT-996 -22/08/2023 78078115 3 TMJ-043 -22/08/2023 78757121 4 ZXK-295 -22/08/2023 38913831 1 YZD-580 -22/08/2023 94080926 5 OTW-288 -22/08/2023 87800799 1 QRC-609 -22/08/2023 77191257 6 AVM-258 -22/08/2023 66409237 5 ICX-503 -22/08/2023 52097922 2 MMA-577 -22/08/2023 78078115 2 DFF-034 -22/08/2023 76388967 6 RSE-049 -22/08/2023 64394265 6 YYK-309 -22/08/2023 84165595 4 QHC-492 -22/08/2023 77484838 4 BTO-226 -22/08/2023 78757121 3 OQI-373 -22/08/2023 71984468 2 PQH-935 -22/08/2023 93845419 2 NSR-955 -22/08/2023 43488351 5 XLF-273 -22/08/2023 80048864 3 BWD-036 -22/08/2023 36008913 6 HFC-845 -22/08/2023 78078115 5 XZR-640 -22/08/2023 89298238 3 QTK-083 -22/08/2023 37110873 2 GXF-122 -22/08/2023 86241107 3 HFC-845 -22/08/2023 27912250 1 LWG-915 -22/08/2023 15561764 6 JYQ-045 -22/08/2023 20864087 1 SPR-580 -22/08/2023 16151792 3 WZD-331 -22/08/2023 95161027 2 VJI-529 -23/08/2023 43488351 6 QTK-083 -23/08/2023 81114108 3 OFS-384 -23/08/2023 87813843 6 LDR-510 -23/08/2023 93160528 5 BRD-969 -23/08/2023 50365593 6 ZVA-180 -23/08/2023 12663268 5 QFP-254 -23/08/2023 81114108 4 BCN-855 -23/08/2023 29337157 6 QHC-492 -23/08/2023 78078115 2 PJG-338 -23/08/2023 93160528 3 QTK-083 -23/08/2023 79372768 1 SAM-013 -23/08/2023 31193794 1 JDC-028 -23/08/2023 55552996 1 AQS-362 -23/08/2023 76388967 6 CNQ-172 -23/08/2023 89298238 2 PFD-286 -23/08/2023 22280452 5 VRR-793 -23/08/2023 79464412 6 MTF-868 -23/08/2023 23928045 2 LWG-915 -23/08/2023 89148118 6 TKM-141 -23/08/2023 89298238 1 YOT-530 -23/08/2023 77642521 2 YYU-726 -23/08/2023 89429489 1 QUU-384 -23/08/2023 83236386 1 OFS-384 -23/08/2023 73185299 5 QFP-254 -23/08/2023 69324480 3 VXS-438 -23/08/2023 78922174 2 XBD-314 -23/08/2023 64394265 5 OTW-288 -23/08/2023 90237332 4 PFD-286 -24/08/2023 50375303 6 JXD-139 -24/08/2023 45783712 1 VZV-827 -24/08/2023 79464412 4 JXD-139 -24/08/2023 26290971 3 TYF-885 -24/08/2023 35565959 5 VJI-529 -24/08/2023 50365593 3 VVS-017 -24/08/2023 25171011 3 QRC-609 -24/08/2023 26976877 5 AFL-718 -24/08/2023 79901434 2 OXP-732 -24/08/2023 43877279 4 SSD-176 -24/08/2023 88956889 1 TMN-884 -24/08/2023 87800799 5 JDC-028 -24/08/2023 97403853 5 BCK-361 -24/08/2023 73914283 4 OBI-353 -24/08/2023 59162728 4 FEG-454 -24/08/2023 45877001 5 RDT-761 -24/08/2023 15210391 3 OTW-288 -24/08/2023 54761731 5 FVB-607 -24/08/2023 95015539 2 CSZ-863 -24/08/2023 33713901 6 ZVA-180 -24/08/2023 89148118 5 JFC-432 -24/08/2023 46462527 6 ISU-815 -24/08/2023 45828535 2 AVM-258 -24/08/2023 42928709 6 GLC-370 -24/08/2023 78078115 1 SSD-176 -24/08/2023 13245501 1 AWB-345 -24/08/2023 11602775 2 JJN-837 -24/08/2023 86402303 3 OQI-373 -24/08/2023 12663268 3 AHB-459 -24/08/2023 24995742 4 KCO-488 -24/08/2023 36380447 5 OWN-701 -24/08/2023 85949265 6 LDR-510 -25/08/2023 96258632 5 EBI-299 -25/08/2023 87800799 2 EUZ-452 -25/08/2023 71378466 1 OQI-373 -25/08/2023 87800799 2 KWP-672 -25/08/2023 88995291 2 HLR-109 -25/08/2023 52097922 5 GBD-525 -25/08/2023 35565959 4 CIM-038 -25/08/2023 67418025 1 QUU-384 -25/08/2023 95751208 3 BWD-036 -25/08/2023 26976877 2 JXD-139 -25/08/2023 77642521 5 QUU-384 -25/08/2023 79140840 2 TYF-885 -25/08/2023 57263719 5 YOT-530 -25/08/2023 62324793 5 YJD-279 -25/08/2023 93845419 5 AWB-345 -25/08/2023 87800799 2 ICX-503 -25/08/2023 19829266 2 UXG-019 -25/08/2023 57263719 6 TZY-323 -25/08/2023 93160528 2 DUG-251 -25/08/2023 79901434 3 AHB-459 -25/08/2023 50375303 2 SJQ-827 -25/08/2023 32821689 5 MMA-577 -25/08/2023 42798099 6 RDT-761 -25/08/2023 11602775 4 XLF-273 -25/08/2023 49087435 1 AFL-718 -25/08/2023 73786035 1 AQS-362 -25/08/2023 45783712 5 SNY-500 -25/08/2023 16151792 1 CNQ-172 -25/08/2023 62566305 4 DIQ-718 -25/08/2023 13245501 1 ZWF-661 -25/08/2023 40348917 4 SNY-500 -25/08/2023 73535476 2 LDR-510 -25/08/2023 83236386 2 MTF-868 -25/08/2023 58187172 6 KBY-991 -25/08/2023 77484838 3 YGV-332 -26/08/2023 26976877 3 XZG-521 -26/08/2023 54761731 3 DEV-433 -26/08/2023 27912250 1 ICX-503 -26/08/2023 42157219 6 KWP-672 -26/08/2023 24995742 1 BWD-036 -26/08/2023 54761731 1 VZV-827 -26/08/2023 38637282 6 FLJ-040 -26/08/2023 29337157 4 WZD-331 -26/08/2023 78922174 5 AFL-718 -26/08/2023 90365520 6 EUZ-452 -26/08/2023 11602775 1 JJN-837 -26/08/2023 73535476 4 KJX-387 -26/08/2023 86828079 3 MQR-442 -26/08/2023 13245501 6 HFC-845 -26/08/2023 57690875 4 XLF-273 -26/08/2023 77191257 3 TZY-323 -26/08/2023 79475585 5 BWD-036 -26/08/2023 49087435 3 BCK-361 -26/08/2023 54761731 4 ZVA-180 -26/08/2023 27912250 3 FLJ-040 -26/08/2023 78757121 1 GXF-122 -26/08/2023 42157219 6 III-576 -26/08/2023 71378466 4 BIT-434 -26/08/2023 32904023 1 KQQ-136 -26/08/2023 83505958 1 MQR-442 -26/08/2023 99842319 1 ZAF-449 -26/08/2023 59407188 5 RDT-761 -26/08/2023 57263719 5 ZWF-661 -26/08/2023 95161027 5 VVS-017 -26/08/2023 45828535 6 QJO-060 -26/08/2023 78757121 4 ARS-231 -26/08/2023 81114108 1 VCL-867 -26/08/2023 77484838 1 AFL-718 -26/08/2023 31611146 1 XSD-310 -26/08/2023 17972674 4 UWA-476 -26/08/2023 40348917 3 VRR-793 -26/08/2023 94080926 2 CIM-038 -26/08/2023 83236386 2 OPT-996 -26/08/2023 86402303 3 OQI-373 -26/08/2023 79901434 2 TXM-139 -27/08/2023 91897732 2 OXP-732 -27/08/2023 45877001 5 GBJ-693 -27/08/2023 78078115 2 XOA-735 -27/08/2023 86828079 1 YGV-332 -27/08/2023 73185299 3 QUU-384 -27/08/2023 96659352 6 KQA-580 -27/08/2023 43053402 2 YOT-530 -27/08/2023 55552996 6 SSD-176 -27/08/2023 26976877 3 KQQ-136 -27/08/2023 40112594 6 KSO-608 -27/08/2023 79140840 1 HLR-109 -27/08/2023 41036366 2 AQS-362 -27/08/2023 66409237 4 CRU-009 -27/08/2023 90237332 1 OQI-373 -27/08/2023 78922174 3 OQI-373 -27/08/2023 79140840 3 DFF-034 -27/08/2023 43877279 4 SNY-500 -27/08/2023 11602775 3 YYK-309 -27/08/2023 54716824 6 CRU-009 -27/08/2023 38637282 1 OFS-384 -27/08/2023 87813843 4 MLE-193 -27/08/2023 15561764 2 FYF-898 -27/08/2023 73914283 1 OBI-353 -27/08/2023 12663268 6 XSD-310 -27/08/2023 17913944 4 XLF-273 -27/08/2023 26233063 4 JFC-432 -27/08/2023 38913831 3 FLW-631 -27/08/2023 32565207 4 UXG-019 -27/08/2023 57263719 2 OTH-462 -27/08/2023 89863424 4 SSE-115 -27/08/2023 67418025 5 EVN-510 -27/08/2023 26976877 4 YUQ-590 -27/08/2023 57690875 6 XTE-383 -27/08/2023 84165595 3 JFC-432 -27/08/2023 63437380 2 PJG-338 -27/08/2023 22777006 2 XLF-273 -27/08/2023 52097922 5 ISU-815 -27/08/2023 13245501 5 JCW-489 -27/08/2023 22777006 3 YYK-309 -27/08/2023 95751208 4 BRD-969 -27/08/2023 63437380 5 YEZ-591 -27/08/2023 37110873 5 YZD-580 -27/08/2023 25171011 1 CIM-038 -27/08/2023 60574154 6 III-576 -27/08/2023 78757121 4 KJX-387 -28/08/2023 45828535 6 TZY-323 -28/08/2023 57263719 3 BWD-036 -28/08/2023 23928045 3 OXP-732 -28/08/2023 73786035 4 DEN-125 -28/08/2023 79464412 5 CJE-310 -28/08/2023 35584593 4 AVM-258 -28/08/2023 94080926 5 NMV-644 -28/08/2023 85871751 2 MYC-756 -28/08/2023 57690875 3 CIM-038 -28/08/2023 43043986 5 QFP-254 -28/08/2023 44679500 1 AWB-345 -28/08/2023 32565207 5 FVQ-662 -28/08/2023 69975105 6 HFM-021 -28/08/2023 89298238 2 QFP-254 -28/08/2023 43053402 6 FVQ-662 -28/08/2023 71463316 4 BCN-855 -28/08/2023 89148118 5 XLF-273 -28/08/2023 95161027 1 OQI-373 -28/08/2023 78922174 5 TKM-141 -28/08/2023 43877279 5 QUU-384 -28/08/2023 40112594 2 BCK-361 -28/08/2023 66409237 4 UXG-019 -28/08/2023 79372768 6 QVJ-982 -28/08/2023 24995742 3 YMU-875 -28/08/2023 80048864 3 BCK-361 -28/08/2023 71463316 3 UWA-476 -28/08/2023 59407188 6 BIT-434 -28/08/2023 71378466 6 ARS-231 -28/08/2023 77484838 1 UWA-476 -28/08/2023 17972674 1 ZWF-661 -28/08/2023 89863424 6 OTH-462 -28/08/2023 26976877 4 SSE-115 -28/08/2023 42157219 2 KCO-488 -28/08/2023 42157219 5 OTS-581 -28/08/2023 35565959 2 DFJ-952 -28/08/2023 42928709 5 NSM-283 -28/08/2023 32904023 3 KJX-387 -28/08/2023 26233063 3 KSO-608 -28/08/2023 79475585 6 KQQ-136 -28/08/2023 80048864 1 PPX-620 -28/08/2023 76388967 5 SJQ-827 -28/08/2023 86241107 2 CIM-038 -28/08/2023 60574154 5 KDA-627 -28/08/2023 62324793 2 OPJ-039 -29/08/2023 16552775 5 CNN-411 -29/08/2023 69639726 1 DON-719 -29/08/2023 16151792 1 AQS-362 -29/08/2023 44229880 3 SNY-500 -29/08/2023 53166028 3 ONB-903 -29/08/2023 71463316 5 KCO-488 -29/08/2023 87800799 2 WZD-331 -29/08/2023 31193794 5 BXY-119 -29/08/2023 98140264 2 DFF-034 -29/08/2023 43053402 2 VRR-793 -29/08/2023 20864087 5 YUQ-590 -29/08/2023 87800799 3 BTO-226 -29/08/2023 45828535 5 YMU-875 -29/08/2023 53166028 1 QHC-492 -29/08/2023 55552996 1 SJD-818 -29/08/2023 95161027 4 FQG-293 -29/08/2023 25171011 3 VCL-867 -29/08/2023 71463316 6 EBI-299 -29/08/2023 45877001 2 PJG-338 -29/08/2023 77642521 5 DFJ-952 -29/08/2023 88956889 6 HFM-021 -29/08/2023 86241107 2 FEG-454 -29/08/2023 81114108 2 RBE-789 -29/08/2023 52097922 2 OWN-701 -29/08/2023 77484838 3 UDR-957 -29/08/2023 62324793 1 FQG-293 -29/08/2023 71378466 3 XSD-310 -29/08/2023 29847168 1 BCK-361 -29/08/2023 46462527 3 KWP-672 -29/08/2023 79464412 2 NSM-283 -29/08/2023 76388967 5 EBI-299 -30/08/2023 83505958 5 TYF-885 -30/08/2023 42928709 4 QIL-029 -30/08/2023 15210391 2 DON-719 -30/08/2023 69975105 6 WZD-331 -30/08/2023 89429489 6 VCL-867 -30/08/2023 32821689 3 ONB-903 -30/08/2023 62566305 5 GXF-122 -30/08/2023 62324793 5 XBD-314 -30/08/2023 35565959 5 JXD-139 -30/08/2023 32565207 4 TKM-141 -30/08/2023 89863424 3 QRC-609 -30/08/2023 97403853 4 GBJ-693 -30/08/2023 96659352 3 KQQ-136 -30/08/2023 79140840 1 OTH-462 -30/08/2023 23928045 5 TKM-141 -30/08/2023 48184351 2 KQA-580 -30/08/2023 45877001 6 KBY-991 -30/08/2023 73185299 3 AVM-258 -30/08/2023 26290971 3 GKG-558 -30/08/2023 85949265 5 VRR-793 -30/08/2023 97403853 6 KQQ-136 -30/08/2023 86402303 6 RBE-789 -30/08/2023 96258632 2 QHC-492 -30/08/2023 63437380 4 AWB-345 -30/08/2023 87800799 6 GBD-525 -30/08/2023 15210391 2 AQS-362 -30/08/2023 19829266 3 TXM-139 -30/08/2023 50365593 5 AFL-718 -31/08/2023 90237332 3 QFP-254 -31/08/2023 42798099 6 CNN-411 -31/08/2023 81114108 5 DFF-034 -31/08/2023 90365520 6 KBY-991 -31/08/2023 35584593 4 SSD-176 -31/08/2023 97403853 3 YJD-279 -31/08/2023 46462527 6 LWG-915 -31/08/2023 93845419 6 QIL-029 -31/08/2023 73185299 3 OTH-462 -31/08/2023 87800799 2 VRR-793 -31/08/2023 64394265 5 OFS-384 -31/08/2023 45828535 4 XSD-310 -31/08/2023 69975105 6 TMJ-043 -31/08/2023 86402303 6 HFM-021 -31/08/2023 87813843 1 OQI-373 -31/08/2023 54716824 1 UDR-957 -31/08/2023 37110873 4 VDD-853 -31/08/2023 25171011 6 AWB-345 -31/08/2023 67418025 2 FEG-454 -31/08/2023 22777006 1 FCN-617 -31/08/2023 48467976 5 JDQ-505 -31/08/2023 71463316 4 AWT-354 -31/08/2023 37110873 4 QUU-384 -31/08/2023 89148118 6 EBI-299 -31/08/2023 45783712 2 YUQ-590 -31/08/2023 13245501 2 QIL-029 -31/08/2023 54716824 6 ZEX-027 -31/08/2023 62324793 1 LDR-510 -01/09/2023 84165595 6 HFM-021 -01/09/2023 86241107 2 UXG-019 -01/09/2023 79420973 5 SSE-115 -01/09/2023 13245501 3 VXS-438 -01/09/2023 73185299 3 QHC-492 -01/09/2023 43043986 5 SSD-176 -01/09/2023 22280452 3 UCX-285 -01/09/2023 77191257 6 ZEX-027 -01/09/2023 78922174 3 XBD-314 -01/09/2023 49087435 2 III-576 -01/09/2023 42798099 5 TMN-884 -01/09/2023 17913944 1 DEN-125 -01/09/2023 78078115 4 FQG-293 -01/09/2023 96659352 4 ADX-669 -01/09/2023 93160528 1 YYU-726 -01/09/2023 77191257 5 QVJ-982 -01/09/2023 31611146 4 FVQ-662 -01/09/2023 89298238 4 UJV-290 -01/09/2023 28390487 2 GLC-370 -01/09/2023 89148118 1 AFL-718 -01/09/2023 71984468 1 TZY-323 -01/09/2023 40348917 1 BMJ-772 -01/09/2023 32904023 4 DUG-251 -01/09/2023 19829266 3 RDT-761 -01/09/2023 16151792 6 IDO-503 -01/09/2023 87813843 3 XSD-310 -01/09/2023 41036366 4 QVJ-982 -01/09/2023 43488351 6 DIQ-718 -01/09/2023 91897732 5 XZR-640 -01/09/2023 83236386 5 UJV-290 -01/09/2023 79140840 4 JXD-139 -01/09/2023 84165595 1 DFJ-952 -01/09/2023 35565959 1 BZS-261 -01/09/2023 50365593 3 LWG-915 -02/09/2023 88956889 6 UWA-476 -02/09/2023 79372768 4 GLC-370 -02/09/2023 89863424 1 FVB-607 -02/09/2023 15210391 4 VXS-438 -02/09/2023 32821689 5 MTF-868 -02/09/2023 98140264 3 CJE-310 -02/09/2023 13245501 5 BXY-119 -02/09/2023 94080926 5 TXM-139 -02/09/2023 59407188 3 LYZ-614 -02/09/2023 15210391 3 TZY-323 -02/09/2023 84165595 6 RDT-761 -02/09/2023 20864087 6 JDQ-505 -02/09/2023 89429489 3 BXY-119 -02/09/2023 88956889 4 MYC-756 -02/09/2023 41036366 4 SJD-818 -02/09/2023 24995742 3 DON-719 -02/09/2023 69324480 1 DIQ-718 -02/09/2023 37110873 1 SSD-176 -02/09/2023 50375303 1 AFL-718 -02/09/2023 32904023 4 QFP-254 -02/09/2023 55552996 1 QTK-083 -02/09/2023 90237332 3 TKM-141 -02/09/2023 90365520 5 VDD-853 -02/09/2023 33397650 6 VJI-529 -02/09/2023 50365593 6 TMN-884 -02/09/2023 79420973 3 GXF-122 -02/09/2023 50365593 6 JDC-028 -02/09/2023 33713901 2 UWA-476 -02/09/2023 79372768 5 EUZ-452 -02/09/2023 43053402 6 MMA-577 -02/09/2023 66409237 6 AWT-354 -02/09/2023 95161027 5 III-576 -02/09/2023 53166028 3 TXM-139 -02/09/2023 78922174 6 EJW-346 -02/09/2023 78078115 5 DFJ-952 -02/09/2023 20864087 1 JFC-432 -02/09/2023 45783712 6 SSD-176 -02/09/2023 77191257 2 KWP-672 -02/09/2023 29337157 4 HFM-021 -02/09/2023 79901434 6 OBI-353 -02/09/2023 57263719 4 DOV-560 -02/09/2023 98140264 1 BRD-969 -02/09/2023 40348917 2 DFJ-952 -02/09/2023 86828079 5 QIL-029 -02/09/2023 79140840 5 QRC-609 -02/09/2023 89298238 4 YOT-530 -02/09/2023 20864087 4 BXY-119 -02/09/2023 66409237 4 DFF-034 -02/09/2023 42928709 5 OQI-373 -03/09/2023 71378466 2 FVQ-662 -03/09/2023 99842319 2 DUG-251 -03/09/2023 26290971 3 PVZ-181 -03/09/2023 79901434 5 CSZ-863 -03/09/2023 40112594 4 FVQ-662 -03/09/2023 16552775 6 AWB-345 -03/09/2023 23928045 2 TMN-884 -03/09/2023 69324480 3 UOD-420 -03/09/2023 33713901 1 VVS-017 -03/09/2023 43043986 1 ZEX-027 -03/09/2023 16151792 1 AQS-362 -03/09/2023 73535476 5 UWA-476 -03/09/2023 62566305 1 AVM-258 -03/09/2023 57263719 5 OTH-462 -03/09/2023 52097922 6 XSD-310 -03/09/2023 96258632 2 CRU-009 -03/09/2023 89429489 1 UXG-019 -03/09/2023 50375303 5 CRU-009 -03/09/2023 52097922 2 UTN-601 -03/09/2023 73535476 4 FLJ-040 -03/09/2023 12663268 4 YYU-726 -03/09/2023 96659352 3 GBJ-693 -03/09/2023 37110873 6 FCN-617 -03/09/2023 52097922 4 XZG-521 -03/09/2023 42798099 2 OQI-373 -03/09/2023 54761731 5 OTS-581 -03/09/2023 26976877 4 VTV-269 -03/09/2023 79901434 2 ZEX-027 -03/09/2023 95751208 4 UOD-420 -03/09/2023 15561764 2 GBJ-693 -03/09/2023 32904023 6 RBE-789 -03/09/2023 59407188 1 OWN-701 -04/09/2023 85949265 4 JFC-432 -04/09/2023 38913831 3 BCN-855 -04/09/2023 45783712 4 YMU-875 -04/09/2023 50375303 4 VXS-438 -04/09/2023 88995291 3 MTF-868 -04/09/2023 26233063 1 UWA-476 -04/09/2023 44229880 4 JXD-139 -04/09/2023 36380447 2 HLR-109 -04/09/2023 12663268 3 RAH-420 -04/09/2023 91897732 2 PFD-286 -04/09/2023 31611146 4 YOT-530 -04/09/2023 42928709 4 XLF-273 -04/09/2023 50375303 5 KQA-580 -04/09/2023 69975105 5 FQG-293 -04/09/2023 50375303 5 YJD-279 -04/09/2023 76388967 6 PFD-286 -04/09/2023 48184351 1 TXM-139 -04/09/2023 33397650 3 IHG-413 -04/09/2023 25171011 4 DFJ-952 -04/09/2023 91897732 2 TMN-884 -04/09/2023 66409237 3 BRD-969 -04/09/2023 77191257 4 ZWF-661 -04/09/2023 32565207 6 IDO-503 -04/09/2023 63437380 5 III-576 -04/09/2023 42928709 5 QFP-254 -04/09/2023 88956889 2 YUQ-590 -04/09/2023 94080926 5 SPR-580 -04/09/2023 69324480 5 JCW-489 -04/09/2023 35565959 5 QRC-609 -04/09/2023 88956889 3 UWA-476 -04/09/2023 27912250 3 QFR-958 -05/09/2023 42798099 1 AQS-362 -05/09/2023 13245501 5 KJX-387 -05/09/2023 13245501 5 XOA-735 -05/09/2023 12663268 1 BMJ-772 -05/09/2023 67418025 6 YYU-726 -05/09/2023 69324480 1 VJI-529 -05/09/2023 16151792 3 TZY-323 -05/09/2023 55552996 6 UXG-019 -05/09/2023 60574154 2 BWD-036 -05/09/2023 22280452 2 XSD-310 -05/09/2023 63437380 2 KQA-580 -05/09/2023 62566305 3 CNQ-172 -05/09/2023 46462527 4 KCO-488 -05/09/2023 93845419 5 CIM-038 -05/09/2023 89298238 3 JXD-139 -05/09/2023 89298238 3 ICX-503 -05/09/2023 73914283 3 BRD-969 -05/09/2023 54716824 3 SPR-580 -05/09/2023 64394265 1 YUQ-590 -05/09/2023 98589725 1 VRR-793 -05/09/2023 76388967 2 DOV-560 -05/09/2023 80048864 5 RDT-761 -05/09/2023 43877279 5 TYF-885 +Fecha DNI Cant. Código producto +21/08/2023 90365520 1 OPJ-039 +21/08/2023 77191257 5 BWD-036 +21/08/2023 69639726 3 OPT-996 +21/08/2023 11602775 4 CIM-038 +21/08/2023 32565207 6 ZWF-661 +21/08/2023 49087435 2 VDD-853 +21/08/2023 49087435 1 PJG-338 +21/08/2023 45877001 4 VVS-017 +21/08/2023 79140840 5 TMN-884 +21/08/2023 98140264 4 QHC-492 +21/08/2023 91897732 1 WLL-607 +21/08/2023 90365520 6 KWP-672 +21/08/2023 71984468 5 JJN-837 +21/08/2023 49087435 1 SJQ-827 +21/08/2023 15210391 1 HFM-021 +21/08/2023 17913944 4 IHG-413 +21/08/2023 17972674 1 UTN-601 +21/08/2023 90237332 5 PVZ-181 +21/08/2023 49087435 6 XZR-640 +21/08/2023 37110873 2 UWA-476 +21/08/2023 25171011 1 VCL-867 +21/08/2023 85949265 6 TMJ-043 +21/08/2023 85949265 2 YUQ-590 +21/08/2023 26233063 2 ZAF-449 +21/08/2023 43043986 3 TXM-139 +21/08/2023 29337157 3 ZEX-027 +21/08/2023 38913831 3 JFC-432 +21/08/2023 83505958 3 EJW-346 +21/08/2023 11602775 6 TMJ-043 +21/08/2023 45783712 3 QFR-958 +21/08/2023 17913944 5 YJD-279 +21/08/2023 81114108 4 VRR-793 +21/08/2023 81114108 5 DUG-251 +21/08/2023 55552996 1 FQG-293 +21/08/2023 50365593 1 TZY-323 +21/08/2023 57690875 5 CSZ-863 +21/08/2023 32904023 3 SAM-013 +21/08/2023 40348917 3 WZD-331 +21/08/2023 40112594 3 EBI-299 +21/08/2023 40348917 2 FLJ-040 +21/08/2023 44229880 5 HLR-109 +21/08/2023 62566305 4 TYF-885 +21/08/2023 58187172 2 VXS-438 +21/08/2023 71463316 6 QFP-254 +21/08/2023 15561764 4 RAH-420 +21/08/2023 89429489 1 VXS-438 +21/08/2023 95161027 5 TZY-323 +22/08/2023 77484838 6 YUQ-590 +22/08/2023 32821689 1 ISU-815 +22/08/2023 27912250 4 LWG-915 +22/08/2023 26290971 5 TZY-323 +22/08/2023 73535476 3 CIM-038 +22/08/2023 15210391 5 RSE-049 +22/08/2023 35584593 1 KCO-488 +22/08/2023 25171011 6 OPT-996 +22/08/2023 78078115 3 TMJ-043 +22/08/2023 78757121 4 ZXK-295 +22/08/2023 38913831 1 YZD-580 +22/08/2023 94080926 5 OTW-288 +22/08/2023 87800799 1 QRC-609 +22/08/2023 77191257 6 AVM-258 +22/08/2023 66409237 5 ICX-503 +22/08/2023 52097922 2 MMA-577 +22/08/2023 78078115 2 DFF-034 +22/08/2023 76388967 6 RSE-049 +22/08/2023 64394265 6 YYK-309 +22/08/2023 84165595 4 QHC-492 +22/08/2023 77484838 4 BTO-226 +22/08/2023 78757121 3 OQI-373 +22/08/2023 71984468 2 PQH-935 +22/08/2023 93845419 2 NSR-955 +22/08/2023 43488351 5 XLF-273 +22/08/2023 80048864 3 BWD-036 +22/08/2023 36008913 6 HFC-845 +22/08/2023 78078115 5 XZR-640 +22/08/2023 89298238 3 QTK-083 +22/08/2023 37110873 2 GXF-122 +22/08/2023 86241107 3 HFC-845 +22/08/2023 27912250 1 LWG-915 +22/08/2023 15561764 6 JYQ-045 +22/08/2023 20864087 1 SPR-580 +22/08/2023 16151792 3 WZD-331 +22/08/2023 95161027 2 VJI-529 +23/08/2023 43488351 6 QTK-083 +23/08/2023 81114108 3 OFS-384 +23/08/2023 87813843 6 LDR-510 +23/08/2023 93160528 5 BRD-969 +23/08/2023 50365593 6 ZVA-180 +23/08/2023 12663268 5 QFP-254 +23/08/2023 81114108 4 BCN-855 +23/08/2023 29337157 6 QHC-492 +23/08/2023 78078115 2 PJG-338 +23/08/2023 93160528 3 QTK-083 +23/08/2023 79372768 1 SAM-013 +23/08/2023 31193794 1 JDC-028 +23/08/2023 55552996 1 AQS-362 +23/08/2023 76388967 6 CNQ-172 +23/08/2023 89298238 2 PFD-286 +23/08/2023 22280452 5 VRR-793 +23/08/2023 79464412 6 MTF-868 +23/08/2023 23928045 2 LWG-915 +23/08/2023 89148118 6 TKM-141 +23/08/2023 89298238 1 YOT-530 +23/08/2023 77642521 2 YYU-726 +23/08/2023 89429489 1 QUU-384 +23/08/2023 83236386 1 OFS-384 +23/08/2023 73185299 5 QFP-254 +23/08/2023 69324480 3 VXS-438 +23/08/2023 78922174 2 XBD-314 +23/08/2023 64394265 5 OTW-288 +23/08/2023 90237332 4 PFD-286 +24/08/2023 50375303 6 JXD-139 +24/08/2023 45783712 1 VZV-827 +24/08/2023 79464412 4 JXD-139 +24/08/2023 26290971 3 TYF-885 +24/08/2023 35565959 5 VJI-529 +24/08/2023 50365593 3 VVS-017 +24/08/2023 25171011 3 QRC-609 +24/08/2023 26976877 5 AFL-718 +24/08/2023 79901434 2 OXP-732 +24/08/2023 43877279 4 SSD-176 +24/08/2023 88956889 1 TMN-884 +24/08/2023 87800799 5 JDC-028 +24/08/2023 97403853 5 BCK-361 +24/08/2023 73914283 4 OBI-353 +24/08/2023 59162728 4 FEG-454 +24/08/2023 45877001 5 RDT-761 +24/08/2023 15210391 3 OTW-288 +24/08/2023 54761731 5 FVB-607 +24/08/2023 95015539 2 CSZ-863 +24/08/2023 33713901 6 ZVA-180 +24/08/2023 89148118 5 JFC-432 +24/08/2023 46462527 6 ISU-815 +24/08/2023 45828535 2 AVM-258 +24/08/2023 42928709 6 GLC-370 +24/08/2023 78078115 1 SSD-176 +24/08/2023 13245501 1 AWB-345 +24/08/2023 11602775 2 JJN-837 +24/08/2023 86402303 3 OQI-373 +24/08/2023 12663268 3 AHB-459 +24/08/2023 24995742 4 KCO-488 +24/08/2023 36380447 5 OWN-701 +24/08/2023 85949265 6 LDR-510 +25/08/2023 96258632 5 EBI-299 +25/08/2023 87800799 2 EUZ-452 +25/08/2023 71378466 1 OQI-373 +25/08/2023 87800799 2 KWP-672 +25/08/2023 88995291 2 HLR-109 +25/08/2023 52097922 5 GBD-525 +25/08/2023 35565959 4 CIM-038 +25/08/2023 67418025 1 QUU-384 +25/08/2023 95751208 3 BWD-036 +25/08/2023 26976877 2 JXD-139 +25/08/2023 77642521 5 QUU-384 +25/08/2023 79140840 2 TYF-885 +25/08/2023 57263719 5 YOT-530 +25/08/2023 62324793 5 YJD-279 +25/08/2023 93845419 5 AWB-345 +25/08/2023 87800799 2 ICX-503 +25/08/2023 19829266 2 UXG-019 +25/08/2023 57263719 6 TZY-323 +25/08/2023 93160528 2 DUG-251 +25/08/2023 79901434 3 AHB-459 +25/08/2023 50375303 2 SJQ-827 +25/08/2023 32821689 5 MMA-577 +25/08/2023 42798099 6 RDT-761 +25/08/2023 11602775 4 XLF-273 +25/08/2023 49087435 1 AFL-718 +25/08/2023 73786035 1 AQS-362 +25/08/2023 45783712 5 SNY-500 +25/08/2023 16151792 1 CNQ-172 +25/08/2023 62566305 4 DIQ-718 +25/08/2023 13245501 1 ZWF-661 +25/08/2023 40348917 4 SNY-500 +25/08/2023 73535476 2 LDR-510 +25/08/2023 83236386 2 MTF-868 +25/08/2023 58187172 6 KBY-991 +25/08/2023 77484838 3 YGV-332 +26/08/2023 26976877 3 XZG-521 +26/08/2023 54761731 3 DEV-433 +26/08/2023 27912250 1 ICX-503 +26/08/2023 42157219 6 KWP-672 +26/08/2023 24995742 1 BWD-036 +26/08/2023 54761731 1 VZV-827 +26/08/2023 38637282 6 FLJ-040 +26/08/2023 29337157 4 WZD-331 +26/08/2023 78922174 5 AFL-718 +26/08/2023 90365520 6 EUZ-452 +26/08/2023 11602775 1 JJN-837 +26/08/2023 73535476 4 KJX-387 +26/08/2023 86828079 3 MQR-442 +26/08/2023 13245501 6 HFC-845 +26/08/2023 57690875 4 XLF-273 +26/08/2023 77191257 3 TZY-323 +26/08/2023 79475585 5 BWD-036 +26/08/2023 49087435 3 BCK-361 +26/08/2023 54761731 4 ZVA-180 +26/08/2023 27912250 3 FLJ-040 +26/08/2023 78757121 1 GXF-122 +26/08/2023 42157219 6 III-576 +26/08/2023 71378466 4 BIT-434 +26/08/2023 32904023 1 KQQ-136 +26/08/2023 83505958 1 MQR-442 +26/08/2023 99842319 1 ZAF-449 +26/08/2023 59407188 5 RDT-761 +26/08/2023 57263719 5 ZWF-661 +26/08/2023 95161027 5 VVS-017 +26/08/2023 45828535 6 QJO-060 +26/08/2023 78757121 4 ARS-231 +26/08/2023 81114108 1 VCL-867 +26/08/2023 77484838 1 AFL-718 +26/08/2023 31611146 1 XSD-310 +26/08/2023 17972674 4 UWA-476 +26/08/2023 40348917 3 VRR-793 +26/08/2023 94080926 2 CIM-038 +26/08/2023 83236386 2 OPT-996 +26/08/2023 86402303 3 OQI-373 +26/08/2023 79901434 2 TXM-139 +27/08/2023 91897732 2 OXP-732 +27/08/2023 45877001 5 GBJ-693 +27/08/2023 78078115 2 XOA-735 +27/08/2023 86828079 1 YGV-332 +27/08/2023 73185299 3 QUU-384 +27/08/2023 96659352 6 KQA-580 +27/08/2023 43053402 2 YOT-530 +27/08/2023 55552996 6 SSD-176 +27/08/2023 26976877 3 KQQ-136 +27/08/2023 40112594 6 KSO-608 +27/08/2023 79140840 1 HLR-109 +27/08/2023 41036366 2 AQS-362 +27/08/2023 66409237 4 CRU-009 +27/08/2023 90237332 1 OQI-373 +27/08/2023 78922174 3 OQI-373 +27/08/2023 79140840 3 DFF-034 +27/08/2023 43877279 4 SNY-500 +27/08/2023 11602775 3 YYK-309 +27/08/2023 54716824 6 CRU-009 +27/08/2023 38637282 1 OFS-384 +27/08/2023 87813843 4 MLE-193 +27/08/2023 15561764 2 FYF-898 +27/08/2023 73914283 1 OBI-353 +27/08/2023 12663268 6 XSD-310 +27/08/2023 17913944 4 XLF-273 +27/08/2023 26233063 4 JFC-432 +27/08/2023 38913831 3 FLW-631 +27/08/2023 32565207 4 UXG-019 +27/08/2023 57263719 2 OTH-462 +27/08/2023 89863424 4 SSE-115 +27/08/2023 67418025 5 EVN-510 +27/08/2023 26976877 4 YUQ-590 +27/08/2023 57690875 6 XTE-383 +27/08/2023 84165595 3 JFC-432 +27/08/2023 63437380 2 PJG-338 +27/08/2023 22777006 2 XLF-273 +27/08/2023 52097922 5 ISU-815 +27/08/2023 13245501 5 JCW-489 +27/08/2023 22777006 3 YYK-309 +27/08/2023 95751208 4 BRD-969 +27/08/2023 63437380 5 YEZ-591 +27/08/2023 37110873 5 YZD-580 +27/08/2023 25171011 1 CIM-038 +27/08/2023 60574154 6 III-576 +27/08/2023 78757121 4 KJX-387 +28/08/2023 45828535 6 TZY-323 +28/08/2023 57263719 3 BWD-036 +28/08/2023 23928045 3 OXP-732 +28/08/2023 73786035 4 DEN-125 +28/08/2023 79464412 5 CJE-310 +28/08/2023 35584593 4 AVM-258 +28/08/2023 94080926 5 NMV-644 +28/08/2023 85871751 2 MYC-756 +28/08/2023 57690875 3 CIM-038 +28/08/2023 43043986 5 QFP-254 +28/08/2023 44679500 1 AWB-345 +28/08/2023 32565207 5 FVQ-662 +28/08/2023 69975105 6 HFM-021 +28/08/2023 89298238 2 QFP-254 +28/08/2023 43053402 6 FVQ-662 +28/08/2023 71463316 4 BCN-855 +28/08/2023 89148118 5 XLF-273 +28/08/2023 95161027 1 OQI-373 +28/08/2023 78922174 5 TKM-141 +28/08/2023 43877279 5 QUU-384 +28/08/2023 40112594 2 BCK-361 +28/08/2023 66409237 4 UXG-019 +28/08/2023 79372768 6 QVJ-982 +28/08/2023 24995742 3 YMU-875 +28/08/2023 80048864 3 BCK-361 +28/08/2023 71463316 3 UWA-476 +28/08/2023 59407188 6 BIT-434 +28/08/2023 71378466 6 ARS-231 +28/08/2023 77484838 1 UWA-476 +28/08/2023 17972674 1 ZWF-661 +28/08/2023 89863424 6 OTH-462 +28/08/2023 26976877 4 SSE-115 +28/08/2023 42157219 2 KCO-488 +28/08/2023 42157219 5 OTS-581 +28/08/2023 35565959 2 DFJ-952 +28/08/2023 42928709 5 NSM-283 +28/08/2023 32904023 3 KJX-387 +28/08/2023 26233063 3 KSO-608 +28/08/2023 79475585 6 KQQ-136 +28/08/2023 80048864 1 PPX-620 +28/08/2023 76388967 5 SJQ-827 +28/08/2023 86241107 2 CIM-038 +28/08/2023 60574154 5 KDA-627 +28/08/2023 62324793 2 OPJ-039 +29/08/2023 16552775 5 CNN-411 +29/08/2023 69639726 1 DON-719 +29/08/2023 16151792 1 AQS-362 +29/08/2023 44229880 3 SNY-500 +29/08/2023 53166028 3 ONB-903 +29/08/2023 71463316 5 KCO-488 +29/08/2023 87800799 2 WZD-331 +29/08/2023 31193794 5 BXY-119 +29/08/2023 98140264 2 DFF-034 +29/08/2023 43053402 2 VRR-793 +29/08/2023 20864087 5 YUQ-590 +29/08/2023 87800799 3 BTO-226 +29/08/2023 45828535 5 YMU-875 +29/08/2023 53166028 1 QHC-492 +29/08/2023 55552996 1 SJD-818 +29/08/2023 95161027 4 FQG-293 +29/08/2023 25171011 3 VCL-867 +29/08/2023 71463316 6 EBI-299 +29/08/2023 45877001 2 PJG-338 +29/08/2023 77642521 5 DFJ-952 +29/08/2023 88956889 6 HFM-021 +29/08/2023 86241107 2 FEG-454 +29/08/2023 81114108 2 RBE-789 +29/08/2023 52097922 2 OWN-701 +29/08/2023 77484838 3 UDR-957 +29/08/2023 62324793 1 FQG-293 +29/08/2023 71378466 3 XSD-310 +29/08/2023 29847168 1 BCK-361 +29/08/2023 46462527 3 KWP-672 +29/08/2023 79464412 2 NSM-283 +29/08/2023 76388967 5 EBI-299 +30/08/2023 83505958 5 TYF-885 +30/08/2023 42928709 4 QIL-029 +30/08/2023 15210391 2 DON-719 +30/08/2023 69975105 6 WZD-331 +30/08/2023 89429489 6 VCL-867 +30/08/2023 32821689 3 ONB-903 +30/08/2023 62566305 5 GXF-122 +30/08/2023 62324793 5 XBD-314 +30/08/2023 35565959 5 JXD-139 +30/08/2023 32565207 4 TKM-141 +30/08/2023 89863424 3 QRC-609 +30/08/2023 97403853 4 GBJ-693 +30/08/2023 96659352 3 KQQ-136 +30/08/2023 79140840 1 OTH-462 +30/08/2023 23928045 5 TKM-141 +30/08/2023 48184351 2 KQA-580 +30/08/2023 45877001 6 KBY-991 +30/08/2023 73185299 3 AVM-258 +30/08/2023 26290971 3 GKG-558 +30/08/2023 85949265 5 VRR-793 +30/08/2023 97403853 6 KQQ-136 +30/08/2023 86402303 6 RBE-789 +30/08/2023 96258632 2 QHC-492 +30/08/2023 63437380 4 AWB-345 +30/08/2023 87800799 6 GBD-525 +30/08/2023 15210391 2 AQS-362 +30/08/2023 19829266 3 TXM-139 +30/08/2023 50365593 5 AFL-718 +31/08/2023 90237332 3 QFP-254 +31/08/2023 42798099 6 CNN-411 +31/08/2023 81114108 5 DFF-034 +31/08/2023 90365520 6 KBY-991 +31/08/2023 35584593 4 SSD-176 +31/08/2023 97403853 3 YJD-279 +31/08/2023 46462527 6 LWG-915 +31/08/2023 93845419 6 QIL-029 +31/08/2023 73185299 3 OTH-462 +31/08/2023 87800799 2 VRR-793 +31/08/2023 64394265 5 OFS-384 +31/08/2023 45828535 4 XSD-310 +31/08/2023 69975105 6 TMJ-043 +31/08/2023 86402303 6 HFM-021 +31/08/2023 87813843 1 OQI-373 +31/08/2023 54716824 1 UDR-957 +31/08/2023 37110873 4 VDD-853 +31/08/2023 25171011 6 AWB-345 +31/08/2023 67418025 2 FEG-454 +31/08/2023 22777006 1 FCN-617 +31/08/2023 48467976 5 JDQ-505 +31/08/2023 71463316 4 AWT-354 +31/08/2023 37110873 4 QUU-384 +31/08/2023 89148118 6 EBI-299 +31/08/2023 45783712 2 YUQ-590 +31/08/2023 13245501 2 QIL-029 +31/08/2023 54716824 6 ZEX-027 +31/08/2023 62324793 1 LDR-510 +01/09/2023 84165595 6 HFM-021 +01/09/2023 86241107 2 UXG-019 +01/09/2023 79420973 5 SSE-115 +01/09/2023 13245501 3 VXS-438 +01/09/2023 73185299 3 QHC-492 +01/09/2023 43043986 5 SSD-176 +01/09/2023 22280452 3 UCX-285 +01/09/2023 77191257 6 ZEX-027 +01/09/2023 78922174 3 XBD-314 +01/09/2023 49087435 2 III-576 +01/09/2023 42798099 5 TMN-884 +01/09/2023 17913944 1 DEN-125 +01/09/2023 78078115 4 FQG-293 +01/09/2023 96659352 4 ADX-669 +01/09/2023 93160528 1 YYU-726 +01/09/2023 77191257 5 QVJ-982 +01/09/2023 31611146 4 FVQ-662 +01/09/2023 89298238 4 UJV-290 +01/09/2023 28390487 2 GLC-370 +01/09/2023 89148118 1 AFL-718 +01/09/2023 71984468 1 TZY-323 +01/09/2023 40348917 1 BMJ-772 +01/09/2023 32904023 4 DUG-251 +01/09/2023 19829266 3 RDT-761 +01/09/2023 16151792 6 IDO-503 +01/09/2023 87813843 3 XSD-310 +01/09/2023 41036366 4 QVJ-982 +01/09/2023 43488351 6 DIQ-718 +01/09/2023 91897732 5 XZR-640 +01/09/2023 83236386 5 UJV-290 +01/09/2023 79140840 4 JXD-139 +01/09/2023 84165595 1 DFJ-952 +01/09/2023 35565959 1 BZS-261 +01/09/2023 50365593 3 LWG-915 +02/09/2023 88956889 6 UWA-476 +02/09/2023 79372768 4 GLC-370 +02/09/2023 89863424 1 FVB-607 +02/09/2023 15210391 4 VXS-438 +02/09/2023 32821689 5 MTF-868 +02/09/2023 98140264 3 CJE-310 +02/09/2023 13245501 5 BXY-119 +02/09/2023 94080926 5 TXM-139 +02/09/2023 59407188 3 LYZ-614 +02/09/2023 15210391 3 TZY-323 +02/09/2023 84165595 6 RDT-761 +02/09/2023 20864087 6 JDQ-505 +02/09/2023 89429489 3 BXY-119 +02/09/2023 88956889 4 MYC-756 +02/09/2023 41036366 4 SJD-818 +02/09/2023 24995742 3 DON-719 +02/09/2023 69324480 1 DIQ-718 +02/09/2023 37110873 1 SSD-176 +02/09/2023 50375303 1 AFL-718 +02/09/2023 32904023 4 QFP-254 +02/09/2023 55552996 1 QTK-083 +02/09/2023 90237332 3 TKM-141 +02/09/2023 90365520 5 VDD-853 +02/09/2023 33397650 6 VJI-529 +02/09/2023 50365593 6 TMN-884 +02/09/2023 79420973 3 GXF-122 +02/09/2023 50365593 6 JDC-028 +02/09/2023 33713901 2 UWA-476 +02/09/2023 79372768 5 EUZ-452 +02/09/2023 43053402 6 MMA-577 +02/09/2023 66409237 6 AWT-354 +02/09/2023 95161027 5 III-576 +02/09/2023 53166028 3 TXM-139 +02/09/2023 78922174 6 EJW-346 +02/09/2023 78078115 5 DFJ-952 +02/09/2023 20864087 1 JFC-432 +02/09/2023 45783712 6 SSD-176 +02/09/2023 77191257 2 KWP-672 +02/09/2023 29337157 4 HFM-021 +02/09/2023 79901434 6 OBI-353 +02/09/2023 57263719 4 DOV-560 +02/09/2023 98140264 1 BRD-969 +02/09/2023 40348917 2 DFJ-952 +02/09/2023 86828079 5 QIL-029 +02/09/2023 79140840 5 QRC-609 +02/09/2023 89298238 4 YOT-530 +02/09/2023 20864087 4 BXY-119 +02/09/2023 66409237 4 DFF-034 +02/09/2023 42928709 5 OQI-373 +03/09/2023 71378466 2 FVQ-662 +03/09/2023 99842319 2 DUG-251 +03/09/2023 26290971 3 PVZ-181 +03/09/2023 79901434 5 CSZ-863 +03/09/2023 40112594 4 FVQ-662 +03/09/2023 16552775 6 AWB-345 +03/09/2023 23928045 2 TMN-884 +03/09/2023 69324480 3 UOD-420 +03/09/2023 33713901 1 VVS-017 +03/09/2023 43043986 1 ZEX-027 +03/09/2023 16151792 1 AQS-362 +03/09/2023 73535476 5 UWA-476 +03/09/2023 62566305 1 AVM-258 +03/09/2023 57263719 5 OTH-462 +03/09/2023 52097922 6 XSD-310 +03/09/2023 96258632 2 CRU-009 +03/09/2023 89429489 1 UXG-019 +03/09/2023 50375303 5 CRU-009 +03/09/2023 52097922 2 UTN-601 +03/09/2023 73535476 4 FLJ-040 +03/09/2023 12663268 4 YYU-726 +03/09/2023 96659352 3 GBJ-693 +03/09/2023 37110873 6 FCN-617 +03/09/2023 52097922 4 XZG-521 +03/09/2023 42798099 2 OQI-373 +03/09/2023 54761731 5 OTS-581 +03/09/2023 26976877 4 VTV-269 +03/09/2023 79901434 2 ZEX-027 +03/09/2023 95751208 4 UOD-420 +03/09/2023 15561764 2 GBJ-693 +03/09/2023 32904023 6 RBE-789 +03/09/2023 59407188 1 OWN-701 +04/09/2023 85949265 4 JFC-432 +04/09/2023 38913831 3 BCN-855 +04/09/2023 45783712 4 YMU-875 +04/09/2023 50375303 4 VXS-438 +04/09/2023 88995291 3 MTF-868 +04/09/2023 26233063 1 UWA-476 +04/09/2023 44229880 4 JXD-139 +04/09/2023 36380447 2 HLR-109 +04/09/2023 12663268 3 RAH-420 +04/09/2023 91897732 2 PFD-286 +04/09/2023 31611146 4 YOT-530 +04/09/2023 42928709 4 XLF-273 +04/09/2023 50375303 5 KQA-580 +04/09/2023 69975105 5 FQG-293 +04/09/2023 50375303 5 YJD-279 +04/09/2023 76388967 6 PFD-286 +04/09/2023 48184351 1 TXM-139 +04/09/2023 33397650 3 IHG-413 +04/09/2023 25171011 4 DFJ-952 +04/09/2023 91897732 2 TMN-884 +04/09/2023 66409237 3 BRD-969 +04/09/2023 77191257 4 ZWF-661 +04/09/2023 32565207 6 IDO-503 +04/09/2023 63437380 5 III-576 +04/09/2023 42928709 5 QFP-254 +04/09/2023 88956889 2 YUQ-590 +04/09/2023 94080926 5 SPR-580 +04/09/2023 69324480 5 JCW-489 +04/09/2023 35565959 5 QRC-609 +04/09/2023 88956889 3 UWA-476 +04/09/2023 27912250 3 QFR-958 +05/09/2023 42798099 1 AQS-362 +05/09/2023 13245501 5 KJX-387 +05/09/2023 13245501 5 XOA-735 +05/09/2023 12663268 1 BMJ-772 +05/09/2023 67418025 6 YYU-726 +05/09/2023 69324480 1 VJI-529 +05/09/2023 16151792 3 TZY-323 +05/09/2023 55552996 6 UXG-019 +05/09/2023 60574154 2 BWD-036 +05/09/2023 22280452 2 XSD-310 +05/09/2023 63437380 2 KQA-580 +05/09/2023 62566305 3 CNQ-172 +05/09/2023 46462527 4 KCO-488 +05/09/2023 93845419 5 CIM-038 +05/09/2023 89298238 3 JXD-139 +05/09/2023 89298238 3 ICX-503 +05/09/2023 73914283 3 BRD-969 +05/09/2023 54716824 3 SPR-580 +05/09/2023 64394265 1 YUQ-590 +05/09/2023 98589725 1 VRR-793 +05/09/2023 76388967 2 DOV-560 +05/09/2023 80048864 5 RDT-761 +05/09/2023 43877279 5 TYF-885 diff --git a/2023-2/E1/mitsuo/p1/fun.cpp b/2023-2/E1/mitsuo/p1/fun.cpp index 8eaccbe..aa589c1 100644 --- a/2023-2/E1/mitsuo/p1/fun.cpp +++ b/2023-2/E1/mitsuo/p1/fun.cpp @@ -1,151 +1,145 @@ -#include <iostream> -#include <fstream> -#include <iomanip> -#include <cstring> - #include "fun.hpp" -#define INCREMENTO 5 +#include <cstring> +#include <fstream> +#include <iomanip> +#include <iostream> using namespace std; -void cargarPedidos(int **&fechaClienteCantidad, char **&codigoDelProducto, const char *nombArch){ - int nd=0, cap=0; - char *cod; - ifstream arch(nombArch,ios::in); - if(not arch.is_open()){ - cout<<"error al abrir "<<nombArch<<endl; +void cargarPedidos(int **&fechaClienteCantidad, char **&codigoDelProducto, + const char *archivo) { + ifstream in(archivo); + if (!in) { + cout << "Error: no se pudo abrir archivo\n"; exit(1); } - fechaClienteCantidad = nullptr; - codigoDelProducto = nullptr; - while (1) { - cod = leeCad(arch, ','); - if (cod==nullptr) break; - if (nd == cap) aumentaEspacios(fechaClienteCantidad, codigoDelProducto, nd, cap); - guardaPed(arch, fechaClienteCantidad[nd - 1], codigoDelProducto[nd - 1], cod); - nd++; - arch.get(); + + fechaClienteCantidad = NULL; + codigoDelProducto = NULL; + size_t size = 0; + + char code[MAXLEN]; + int dni, qty, date, dd, mm, yy; + + int i; + for (i = 0; true; i++) { + in.getline(code, MAXLEN, ','); + in >> dni; in.get(); + in >> qty; in.get(); + in >> dd; in.get(); in >> mm; in.get(); in >> yy; in.get(); + date = yy*10000 + mm*100 + dd; + if (!in) { + break; + } + + if (i + 1 >= size) { + increase_size_productos(fechaClienteCantidad, codigoDelProducto, size); + } + + fechaClienteCantidad[i] = new int [3] {date, dni, qty}; + char * code_mem = new char [strlen(code) + 1]; strcpy(code_mem, code); + codigoDelProducto[i] = code_mem; + + fechaClienteCantidad[i + 1] = NULL; } - qSort(fechaClienteCantidad, codigoDelProducto, 0, nd-2); + + qsort_pedidos(fechaClienteCantidad, codigoDelProducto, 0, i - 1); } -char *leeCad(istream &arch, char delim){ - char *cad, buff[80]; - arch.getline(buff,80,delim); - if(arch.eof()) return nullptr; - cad = new char [strlen(buff)+1]; - strcpy(cad,buff); - return cad; -} +void increase_size_productos(int **&fechaClienteCantidad, char **&codigoDelProducto, size_t &size) { + if (!fechaClienteCantidad) { + // init + size = INCREMENTO; + fechaClienteCantidad = new int * [size]; + codigoDelProducto = new char * [size]; -void aumentaEspacios(int **&fechaClienteCantidad, char **&codigoDelProducto, int &nd, int &cap){ - int **auxF; - char **auxC; - cap += INCREMENTO; - if(fechaClienteCantidad==nullptr){ - fechaClienteCantidad = new int * [cap]{}; - codigoDelProducto = new char * [cap]{}; - nd=1; + fechaClienteCantidad[0] = NULL; + return; } - else{ - auxF = new int * [cap]{}; - auxC = new char * [cap]{}; - for(int i=0;i<nd;i++){ - auxF[i] = fechaClienteCantidad[i]; - auxC[i] = codigoDelProducto[i]; - } - delete fechaClienteCantidad; - delete codigoDelProducto; - fechaClienteCantidad = auxF; - codigoDelProducto = auxC; + + // this has O(n^2) time complexity (not good) + size += INCREMENTO; + int ** tmp1 = new int * [size]; + char ** tmp2 = new char * [size]; + + int i; + for (i = 0; i < size && fechaClienteCantidad[i]; i++) { + tmp1[i] = fechaClienteCantidad[i]; + tmp2[i] = codigoDelProducto[i]; } -} + tmp1[i] = NULL; -void guardaPed(istream &arch, int *&fechaClienteCantidad, char *&codigoDelProducto, char *cod){ - int fecha, dni, cant; - arch>>dni; - arch.get(); - arch>>cant; - arch.get(); - fecha = leeFecha(arch); - fechaClienteCantidad = new int [3] {}; - fechaClienteCantidad[0] = fecha; - fechaClienteCantidad[1] = dni; - fechaClienteCantidad[2] = cant; - codigoDelProducto = cod; + delete [] fechaClienteCantidad; + delete [] codigoDelProducto; + fechaClienteCantidad = tmp1; + codigoDelProducto = tmp2; } + +void qsort_pedidos(int ** v1, char ** v2, int left, int right) { + int i, last; -int leeFecha(istream &arch){ - int dd,mm,aa; - char c; - arch>>dd>>c>>mm>>c>>aa; - return dd+mm*100+aa*10000; -} + /* do nothing if array has less than 2 elements */ + if (left >= right) + return; + + swap_pedidos(v1, v2, left, (left + right) / 2); + last = left; -void qSort(int **fechaClienteCantidad, char **codigoDelProducto, int izq, int der){ - int limite; - if (izq>=der) return; - cambiar(fechaClienteCantidad[izq],codigoDelProducto[izq],fechaClienteCantidad[(izq+der)/2],codigoDelProducto[(izq+der)/2]); - limite = izq; - for(int i=izq+1;i<=der;i++){ - if(desorden(fechaClienteCantidad[i], fechaClienteCantidad[izq])){ - limite++; - cambiar(fechaClienteCantidad[i],codigoDelProducto[i],fechaClienteCantidad[limite],codigoDelProducto[limite]); + /* partition */ + for (i = left + 1; i <= right; i++) { + if (v1[i][0] < v1[left][0]) { + swap_pedidos(v1, v2, ++last, i); } } - cambiar(fechaClienteCantidad[izq],codigoDelProducto[izq],fechaClienteCantidad[limite],codigoDelProducto[limite]); - qSort(fechaClienteCantidad,codigoDelProducto,izq,limite-1); - qSort(fechaClienteCantidad,codigoDelProducto,limite+1,der); -} -void cambiar(int *&fechaClienteI,char *&codigoDelProductoI,int *&fechaClienteK,char *&codigoDelProductoK){ - int *auxI = fechaClienteI; - char *auxC = codigoDelProductoI; - fechaClienteI = fechaClienteK; - codigoDelProductoI = codigoDelProductoK; - fechaClienteK = auxI; - codigoDelProductoK = auxC; + swap_pedidos(v1, v2, left, last); /* reset partition element */ + qsort_pedidos(v1, v2, left, last - 1); + qsort_pedidos(v1, v2, last + 1, right); + } +void swap_pedidos(int ** v1, char ** v2, int left, int right) { + int * t1 = v1[left]; + char * t2 = v2[left]; -bool desorden(int *fechaClienteCantidadI, int *fechaClienteCantidadK){ - return fechaClienteCantidadI[0] < fechaClienteCantidadK[0]; + v1[left] = v1[right]; + v2[left] = v2[right]; + + v1[right] = t1; + v2[right] = t2; } -void pruebaDeCargaDePedidos(int **fechaClienteCantidad, char **codigoDelProducto, const char *nombArch){ - ofstream arch(nombArch,ios::out); - if(not arch.is_open()){ - cout<<"error al abrir "<<nombArch<<endl; +void pruebaDeCargaDePedidos(int **fechaClienteCantidad, + char **codigoDelProducto, const char *archivo) { + ofstream out(archivo); + if (!out) { + cout << "Error: no se pudo abrir archivo\n"; exit(1); } - arch.precision(2); - arch<<fixed; - arch<<setw(43)<<"REPORTE DE PRUEBA DE PEDIDOS"<<endl; - imprimeLinea(arch,'='); - arch<<right<<setw(7)<<"FECHA"; - arch<<right<<setw(12)<<"DNI"<<setw(16)<<"CANTIDAD"<<setw(5)<<" "<<left<<setw(20)<<"CODIGO PRODUCTO"<<endl; - for(int i=0;fechaClienteCantidad[i];i++){ - imprimePedido(arch,fechaClienteCantidad[i], codigoDelProducto[i]); - } -} + out << "Fecha DNI Cant. Código producto\n"; + for (int i = 0; fechaClienteCantidad[i]; i++) { + int date = fechaClienteCantidad[i][0]; + int dni = fechaClienteCantidad[i][1]; + int qty = fechaClienteCantidad[i][2]; + char * code = codigoDelProducto[i]; -void imprimeLinea(ostream &arch,char c){ - for(int i=0;i<58;i++) arch<<c; - arch<<endl; + out << right << fixed << setprecision(2); + print_date(out, date); + out << setw(12) << dni; + out << setw(12) << qty; + out << left << " "; + out << setw(12) << code; + out << '\n'; + } } -void imprimePedido(ostream &arch,int *fechaClienteCantidad, char *codigoDelProducto){ - imprimeFecha(arch,fechaClienteCantidad[0]); - arch<<right<<setw(12)<<fechaClienteCantidad[1]<<setw(10)<<fechaClienteCantidad[2]<<setw(11)<<" "<<left<<setw(10)<<codigoDelProducto<<endl; +void print_date(ostream &out, int date) { + int yy = date / 10000; + int mm = date / 100 % 100; + int dd = date % 100; + out << setfill('0') << right; + out << setw(2) << dd << '/'; + out << setw(2) << mm << '/'; + out << setw(4) << yy << " "; + out << setfill(' '); } - -void imprimeFecha(ostream &arch,int fecha){ - int dd,mm,aa=fecha; - dd = aa%100; - aa/=100; - mm = aa%100; - aa/=100; - arch.fill('0'); - arch<<right<<setw(2)<<dd<<"/"<<setw(2)<<mm<<"/"<<setw(4)<<aa; - arch.fill(' '); -}
\ No newline at end of file diff --git a/2023-2/E1/mitsuo/p1/fun.hpp b/2023-2/E1/mitsuo/p1/fun.hpp index 57c2318..91aca23 100644 --- a/2023-2/E1/mitsuo/p1/fun.hpp +++ b/2023-2/E1/mitsuo/p1/fun.hpp @@ -3,17 +3,16 @@ #include <iostream> -void cargarPedidos(int **&fechaClienteCantidad, char **&codigoDelProducto, const char *nombArch); -char *leeCad(std::istream &arch, char delim); -void aumentaEspacios(int **&fechaClienteCantidad, char **&codigoDelProducto, int &nd, int &cap); -void guardaPed(std::istream &arch, int *&fechaClienteCantidad, char *&codigoDelProducto, char *cod); -int leeFecha(std::istream &arch); -void qSort(int **fechaClienteCantidad, char **codigoDelProducto, int izq, int der); -void cambiar(int *&fechaClienteI,char *&codigoDelProductoI,int *&fechaClienteK,char *&codigoDelProductoK); -bool desorden(int *fechaClienteCantidadI, int *fechaClienteCantidadK); -void pruebaDeCargaDePedidos(int **fechaClienteCantidad, char **codigoDelProducto, const char *nombArch); -void imprimeLinea(std::ostream &arch,char c); -void imprimePedido(std::ostream &arch,int *fechaClienteCantidad, char *codigoDelProducto); -void imprimeFecha(std::ostream &arch,int fecha); +#define MAXLEN 100 +#define INCREMENTO 5 + +void cargarPedidos(int **&fechaClienteCantidad, char **&codigoDelProducto, const char *archivo); +void increase_size_productos(int **&fechaClienteCantidad, char **&codigoDelProducto, size_t &size); + +void qsort_pedidos(int ** v1, char ** v2, int left, int right); +void swap_pedidos(int ** v1, char ** v2, int left, int right); + +void pruebaDeCargaDePedidos(int **fechaClienteCantidad, char **codigoDelProducto, const char *archivo); +void print_date(std::ostream &out, int date); #endif /* FUN_HPP */
\ No newline at end of file diff --git a/2023-2/E1/mitsuo/p1/main.cpp b/2023-2/E1/mitsuo/p1/main.cpp index e762539..0764716 100644 --- a/2023-2/E1/mitsuo/p1/main.cpp +++ b/2023-2/E1/mitsuo/p1/main.cpp @@ -1,8 +1,9 @@ #include "fun.hpp" int main(int argc, char** argv) { - char **codigoDelProducto; - int **fechaClienteCantidad; + char** codigoDelProducto; + int** fechaClienteCantidad; + cargarPedidos(fechaClienteCantidad, codigoDelProducto, "../../Pedidos.csv"); pruebaDeCargaDePedidos(fechaClienteCantidad, codigoDelProducto, "PruebaPedidos.txt"); return 0; diff --git a/2023-2/E1/mitsuo/p2/PruebaProductos.txt b/2023-2/E1/mitsuo/p2/PruebaProductos.txt new file mode 100644 index 0000000..3d18c6b --- /dev/null +++ b/2023-2/E1/mitsuo/p2/PruebaProductos.txt @@ -0,0 +1,168 @@ +Codigo Descripcion Precio Stock +ADX-669 Refrigeradora cap. 220 litros 1239.38 15 +AFL-718 Vinera 1664.97 17 +AHB-459 Reproductor DVD Portatil TV 7 685.50 9 +AQS-362 Teclado Inalambrico USB 233.05 7 +ARS-231 Audifonos Stereos 327.62 13 +AVM-258 Cocina a gas Toscana 2831.23 20 +AWB-345 Deshumedecedor DM-189H 800.37 6 +AWT-354 Galaxy Gear 3409.22 22 +BCK-361 Tablets 10.1 1872.53 9 +BCN-855 Cocina a gas Bahia Can 4015.92 14 +BIT-434 Campana Extractora modelo Glass 375.09 10 +BMJ-772 Refrigeradora Side by Side 936.32 13 +BRD-969 Centro de Lavado Electrico 2579.72 18 +BTO-226 Friobar 863.19 25 +BWD-036 Cocina Empotrable Klimatica 1086.34 5 +BXY-119 Cocina Empotrable Klimatica 2716.11 12 +BZS-261 Cocina a gas Trento 3087.87 8 +CIM-038 Cocina Empotrable Petra 2544.64 16 +CJE-310 Mini componente GPX33 3643.39 16 +CNN-411 Congeladora Side by Side 2296.29 24 +CNQ-172 Congeladora Horizontal 364 Lts. 3689.62 15 +CRU-009 Lavavajilla 2655.78 5 +CSZ-863 Video Filmadora 1713.57 17 +DEN-125 Rack Fijo 26/32 562.46 25 +DEV-433 Parlantes portatiles SHOQBOX 2698.74 13 +DFF-034 Grabadora de voz digital port�til con USB integrado 259.25 24 +DFJ-952 Cocina a gas Prestige 60 INOX 3342.77 18 +DIQ-718 Horno Microondas de Conveccion Cello 390.80 3 +DON-719 Secadora de Cabello SG-3035 360.69 12 +DOV-560 Impresora Laser Mutifuncion Monocromatica 1203.14 3 +DUG-251 Cocina a gas FFG3047SL 1597.96 7 +EBI-299 Cocina a gas Fridare 2287.57 15 +EJW-346 Campana Extractora 359.70 11 +EQY-018 Radio AM/FM stereo RMU-51C 301.73 7 +EUZ-452 Impresora Mutifuncional Led Color 3623.88 11 +EVN-510 Cocina a gas FFG3011LB 2672.30 15 +FCN-617 Televisor Plasma 60 4121.05 6 +FEG-454 Sillon masajeador 1695.70 8 +FLJ-040 Parlantes portatiles SOUNDSHOOTER 3703.37 19 +FLW-631 Radio Reloj Despertador 819.04 7 +FQG-293 Rapiducha Premiun 2784.31 23 +FVB-607 Cocina a gas Essenza BL 2953.07 13 +FVQ-662 Cocina a gas Pro 6300 INOX 1060.68 13 +FYF-898 Proyector a color 1160.46 15 +GBD-525 Refrigeradora Puertas M�gicas 2700.95 14 +GBJ-693 Radio CD 314.20 8 +GKG-558 Horno Microondas MS2042D 1674.24 23 +GLC-370 Video Proyector Power Lite 95 552.24 19 +GXF-122 Televisor Ultra HDTV 1110.16 15 +HFC-845 Televisor Serie LED R555A 3736.75 22 +HFM-021 Horno Electrico 726.91 26 +HLR-109 Parlantes inalambricos 439.47 25 +HTY-123 Refrigeradora GM-S604ULV 1173.33 1 +ICX-503 Cocina a gas Roma 1221.02 15 +IDO-503 Laptop GamerVictus de 15.6 3935.17 23 +IHG-413 Parlant Y pedestal PAM-83 317.70 13 +III-576 Campana Extractora Venus Plus 1077.65 29 +ISB-205 Camara fotografica 16MP 2976.43 3 +ISU-815 Audifonos 619.89 16 +JCW-489 Conservadora Exibidora CMVE-250 2064.97 11 +JDC-028 Puntero Laser 30.48 19 +JDQ-505 Lavadora Modelo Aquamatic 1572.31 24 +JFC-432 DVD DVM-L79 307.67 24 +JJN-837 Lavadora Tecnologia Wobbie 1979.92 15 +JXD-139 Terma Evolucion Soltu 586.02 28 +JYQ-045 Horno Microondas 1.2 p3 267.15 20 +KBY-991 Home Theater E4100 1101.08 24 +KCO-488 Ventilador de pared 679.60 22 +KDA-627 Cocina a gas Ijasmin 1424.46 7 +KJX-387 Ventilador de techo 613.19 9 +KQA-580 Cocina Empotrable Glassy Plus 2907.92 17 +KQQ-136 Impresora Laser EPSON 1139.56 17 +KSO-608 Secadora Modelo Italica 914.17 21 +KWP-672 Televisor UHD TV 1625.30 24 +LDR-510 Mini componente ESX9 2701.87 25 +LWG-915 Cocina a gas Murano 1101.47 15 +LYZ-614 Impresore Mutifuncional Expression XP-211 3510.84 13 +LZK-729 Cocina a gas Kristel 2850.91 3 +MLE-193 Cocina a gas Ingenious 2779.41 10 +MMA-577 Congeladora Horizontal 252 Lts. 1780.30 14 +MQR-442 Reloj Digital RMM-29 271.66 25 +MTF-868 Impresora Monocromatica WorkForce M205 971.59 12 +MYC-756 Cocina a gas Leganza INOX 1506.80 21 +NMV-644 Lavadora Automatica 3272.48 5 +NSM-283 Cocina a gas FFG3053SL 936.81 13 +NSR-955 Cocina a gas Blogna 2591.44 14 +OBI-353 Terma Milenium 2960.56 16 +OFS-384 Parlantes Bluetooth 805.22 8 +ONB-903 Reproductor BLU-RAY 3D 653.67 16 +OPJ-039 Secadora de Ropa 2765.64 12 +OPT-996 Mini componente GPX88 1367.48 14 +OQI-373 Cocina Empotrable Premio Plus 906.16 20 +OTH-462 Lavadora Semi-Automatica 531.04 20 +OTS-581 Galaxy Note 8.0 2653.10 24 +OTW-288 Cavba de Vinos GE cap. 34 botellas 1119.18 14 +OWN-701 Olla arrocera 220.82 21 +OXP-732 Televisor OLED 4K UHD Google TV Smart 77 XR-77A80L LA8 16504.47 8 +PFD-286 Refrigeradora cap. 415 litros 2776.02 8 +PJG-338 Impresora Mutifuncional Inalambricar 1067.80 21 +PPX-620 Aire acondicionado tipo split 2873.42 8 +PQH-935 Rack Giratorio 26/32 94.45 12 +PVZ-181 Ventilador circular 309.77 8 +QFP-254 Calentador electrico instantaneo 180.65 25 +QFR-958 Cocina a gas Bavaro 1607.46 6 +QHC-492 Terma Solucion 1907.23 17 +QIL-029 Mini componente Shake-5 2990.55 16 +QJO-060 Televisor LED FULL HD 2704.14 23 +QRC-609 Camara de video EOS 1806.66 17 +QTK-083 Congeladora Conservador Vertical 476 Lts. 2682.73 16 +QUU-384 Lavavajilla Blue Touch 2545.54 1 +QVJ-982 Horno Microondas 0.7 p3 1352.76 12 +RAH-420 Cocina a gas Pro 6550 INOX 157.01 5 +RBE-789 Televisor SMART TV 3303.07 17 +RDT-761 Horno Microondas con dorador 904.95 21 +RSE-049 Radio CD/DVD - TV 4037.51 21 +SAM-013 Cocina a gas FFG3047SL 2275.18 1 +SJD-818 Refrigeradora CoolStyle 281A Steel 3387.75 23 +SJQ-827 Reproductor Multimedia Touch Screen 1719.56 21 +SNY-500 Cocina a gas Praga Quarzo 3297.09 12 +SPR-580 Dispensador de Agua 404.35 15 +SSD-176 Refrigeradora Linea Gallery 567.71 23 +SSE-115 Refrigeradora CoolStyle 311N Steel 3243.58 23 +TKM-141 Cocina a gas Marsella 402.24 24 +TMJ-043 Lavadora EcoBubble 2400.79 23 +TMN-884 Secadora de mano 310.65 10 +TXM-139 Televisor LED FULL HD 3D 1092.95 5 +TYF-885 Videojuego TW 4 794.14 7 +TZY-323 Terma a gas 2341.01 31 +UCX-285 Galaxy Tab 3 3290.93 11 +UDR-957 Refrigeradora ECOTT 423 IXL 861.70 19 +UJV-290 Cocina a gas Fassina Plus 2423.26 10 +UOD-420 Mini componente ESX6 828.94 10 +UTN-601 Autoradio XAV-601 BT 562.51 4 +UWA-476 Autoradio MEX BT3150U 1191.39 29 +UXG-019 Terma de acumulacion 934.91 16 +VCL-867 Cocina a gas Rubi 2 699.07 9 +VDD-853 Deshumedecedor FAD30D7TSSW 3.4L 25-30m2 1095.67 16 +VJI-529 Horno Empotrable Electrico 1102.67 16 +VRR-793 Rack Giratorio 32/60 241.71 26 +VTV-269 Extractor de aire 854.48 9 +VVS-017 Tablets MW 0731 2599.72 14 +VXS-438 Mouse Blue Tooth 60.11 17 +VZV-827 Refrigeradora Top Mount 1784.27 2 +WLL-607 Cocina Electronica Convencion 1525.04 1 +WZD-331 Refrigeradora ECOTT 465 IX 1213.79 7 +XBD-314 Cocina a gas Fassina 1444.90 8 +XLF-273 Centro de Lavado a Gas 2371.95 20 +XOA-735 Congeladora Vertical 392 Lts. 2708.07 12 +XSD-310 Refrigeradora No frost 2259.93 17 +XTE-383 Rack Fijo 32/60 261.01 10 +XZG-521 Secadora Electrica FAQE7001LW 704.27 22 +XZR-640 Lavadora-Secadora FWD 2390.58 14 +YEZ-591 Lavadora WA 1320.03 9 +YGV-332 Impresora Led Color 2517.66 18 +YJD-279 Cocina a gas Florencia 1028.43 23 +YMU-875 Cocina a gas Plermo Quarzo 3232.10 9 +YOT-530 Deshumedecedor DM-190H 941.73 13 +YUQ-590 Refrigeradora CoolStyle 395N Steel 1979.07 19 +YYK-309 Refrigeradora Door in Door 4079.44 25 +YYU-726 Reproductor DVD Portatil 767.82 14 +YZD-580 Mini componente ESX8 1582.29 4 +ZAF-449 Tablet Cardle 816.43 16 +ZEX-027 Tablet Xperia Z 3843.75 23 +ZVA-180 Refrigeradora 322 litros 2903.13 13 +ZWF-661 Impresora Led 2731.61 1 +ZXK-295 Cocina Empotrable Electrica 3679.43 9 +QQB-968 Refrigeradora 484 litros 1452.92 9 diff --git a/2023-2/E1/mitsuo/p2/fun.cpp b/2023-2/E1/mitsuo/p2/fun.cpp index 9e61144..7521998 100644 --- a/2023-2/E1/mitsuo/p2/fun.cpp +++ b/2023-2/E1/mitsuo/p2/fun.cpp @@ -1,126 +1,110 @@ -#include <iostream> +#include <cstring> +#include <cstdlib> #include <fstream> #include <iomanip> - -#include <cstdlib> -#include <cstring> +#include <iostream> #include "fun.hpp" using namespace std; -enum Reg {COD, NOM, PRECIO, STOCK}; - -void cargarProductos(void *&prod, const char *nombArch){ - ifstream in(nombArch); - if(!in) { - cerr << "Error: no se pudo abrir archivo\n"; +void cargarProductos(void *& productos, const char * archivo) { + ifstream in(archivo); + if (!in) { + cout << "Error: no se pudo abrir archivo\n"; exit(1); } - void **productos=nullptr; - char *cod; - int nd=0, cap=0; - while(1){ - cod = leeCad(in,','); - if(in.eof()) break; - if(nd==cap) aumentaEspacios(productos,nd,cap); - guardaProd(in, productos[nd-1], cod); - nd++; - } - prod = productos; - qsort(prod, nd-1, sizeof(void *), cmpProducto); -} + void ** ps = NULL; + size_t size = 0; -void aumentaEspacios(void**&productos, int &nd, int &cap){ - void **aux; - cap += INCREMENTO; - if(productos==nullptr){ - productos = new void * [cap]{}; - nd=1; - } - else{ - aux = new void * [cap]{}; - for(int i=0;i<nd;i++){ - aux[i] = productos[i]; + char code[MAXLEN]; + char desc[MAXLEN]; + double price; + int stock; + + int i; + for (i = 0; true; i++) { + in.getline(code, MAXLEN, ','); + in.getline(desc, MAXLEN, ','); + in >> price; in.get(); + in >> stock; in.get(); + if (!in) { + break; + } + + if (i + 1 >= size) { + increase_size_productos(ps, size); } - delete productos; - productos = aux; + + char * code_mem = new char [strlen(code) + 1]; strcpy(code_mem, code); + char * desc_mem = new char [strlen(desc) + 1]; strcpy(desc_mem, desc); + + void ** p1 = new void * [4] {code_mem, desc_mem, new double {price}, new int {stock}}; + void ** p2 = new void * [2] {p1, NULL}; + + ps[i] = p2; + ps[i + 1] = NULL; } + +// at the end of the iteration ps[i] == NULL + qsort(ps, i - 1, sizeof(void *), cmp_productos); + productos = ps; } -char *leeCad(istream &arch, char delim){ - char *cad, buff[80]; - arch.getline(buff,80,delim); - if(arch.eof()) return nullptr; - cad = new char [strlen(buff)+1]; - strcpy(cad,buff); - return cad; +int cmp_productos(const void *lhs, const void *rhs) { + // (nasty) + char * s1 = (char *)(*(void ****) lhs)[0][0]; + char * s2 = (char *)(*(void ****) rhs)[0][0]; + return strcmp(s1, s2); } -void guardaProd(istream &arch, void *&prod, char *cod){ - void **producto = new void *[2]{}; - producto[0] = creaRegProd(arch, cod); - producto[1] = nullptr; - prod = producto; -} +void increase_size_productos(void **& ps, size_t &size) { + if (!ps) { + // init + size = INCREMENTO; + ps = new void * [size]; -void *creaRegProd(istream &arch, char *cod){ - char *nomb; - double precio; - int stock; - void **reg; - nomb = leeCad(arch,','); - arch>>precio; - arch.get(); - arch>>stock; - arch>>ws; - reg = new void * [4] {}; - reg[COD] = cod; - reg[NOM] = nomb; - reg[PRECIO] = new double (precio); - reg[STOCK] = new int (stock); - return reg; -} + ps[0] = NULL; + return; + } -int cmpProducto(const void *a, const void *b){ - void **ai = (void**)a, **bi = (void**)b; - void **duplaA = (void**)(*ai), **duplaB = (void**)(*bi); - void **regA = (void**)(duplaA[0]), **regB = (void**)(duplaB[0]); - char *codA = (char *)(regA[0]), *codB = (char*)(regB[0]); - return strcmp(codA, codB); + // this has O(n^2) time complexity (not good) + size += INCREMENTO; + void ** ps_tmp = new void * [size]; + + int i; + for (i = 0; i < size && ps[i]; i++) { + ps_tmp[i] = ps[i]; + } + ps_tmp[i] = NULL; + + delete [] ps; + ps = ps_tmp; } -void pruebaDeCargaDeProductos(void *prod){ - void **productos = (void**)prod; +void pruebaDeCargaDeProductos(void * productos) { ofstream out("PruebaProductos.txt"); - if(!out){ - cout<<"error al abrir archivo PruebaProductos.txt"<<endl; + if (!out) { + cout << "Error: no se pudo abrir archivo\n"; exit(1); } - out.precision(2); - out<<fixed; - out<<setw(70)<<"REPORTE DE PRUEBA DE PRODUCTOS"<<endl; - imprimeLinea(out,'='); - out<<left<<setw(10)<<"CODIGO"<<setw(70)<<"NOMBRE"<<right<<setw(10)<<"PRECIO" - <<setw(10)<<"STOCK"<<endl; - for(int i=0;productos[i];i++){ - imprimeProducto(out,productos[i]); - } -} -void imprimeLinea(ostream &arch,char c){ - for(int i=0;i<110;i++) arch<<c; - arch<<endl; -} + void ** ps = (void **) productos; -void imprimeProducto(ostream &arch,void *prod){ - void **producto = (void**)prod; - imprimeRegistroProducto(arch,producto[0]); -} + out << "Codigo Descripcion Precio Stock\n"; + for (int i = 0; ps[i]; i++) { + void ** p2 = (void **) ps[i]; + void ** p1 = (void **) p2[0]; + char * code = (char *) p1[0]; + char * desc = (char *) p1[1]; + double * price = (double *) p1[2]; + int * stock = (int *) p1[3]; -void imprimeRegistroProducto(ostream &arch,void *prod){ - void **producto = (void**)prod; - char *cod = (char*)producto[COD],*nom = (char*)producto[NOM]; - double *precio = (double*)producto[PRECIO]; - int *stock = (int*)producto[STOCK]; - arch<<left<<setw(10)<<cod<<setw(70)<<nom<<right<<setw(10)<<*precio<<setw(9)<<*stock<<endl; -} + out << left; + out << setw(12) << code; + out << setw(64) << desc; + out << right << fixed << setprecision(2); + out << setw(12) << *price; + out << setw(12) << *stock; + out << '\n'; + } +}
\ No newline at end of file diff --git a/2023-2/E1/mitsuo/p2/fun.hpp b/2023-2/E1/mitsuo/p2/fun.hpp index 70f4b3f..c1ea51a 100644 --- a/2023-2/E1/mitsuo/p2/fun.hpp +++ b/2023-2/E1/mitsuo/p2/fun.hpp @@ -3,19 +3,13 @@ #include <iostream> -#define MAX 1000 #define MAXLEN 100 #define INCREMENTO 5 -void cargarProductos(void *&prod, const char *nombArch); -void aumentaEspacios(void**&productos, int &nd, int &cap); -char *leeCad(std::istream &arch, char delim); -void guardaProd(std::istream &arch, void *&prod, char *cod); -void *creaRegProd(std::istream &arch, char *cod); -int cmpProducto(const void *a, const void *b); -void pruebaDeCargaDeProductos(void *prod); -void imprimeLinea(std::ostream &arch,char c); -void imprimeProducto(std::ostream &arch,void *prod); -void imprimeRegistroProducto(std::ostream &arch,void *prod); +void cargarProductos(void *& productos, const char * archivo); +void pruebaDeCargaDeProductos(void * productos); + +int cmp_productos(const void *lhs, const void *rhs); +void increase_size_productos(void **& ps, size_t &size); #endif /* FUN_HPP */
\ No newline at end of file diff --git a/2023-2/E1/mitsuo/p2/main.cpp b/2023-2/E1/mitsuo/p2/main.cpp index caf1fe7..aafff14 100644 --- a/2023-2/E1/mitsuo/p2/main.cpp +++ b/2023-2/E1/mitsuo/p2/main.cpp @@ -1,7 +1,8 @@ #include "fun.hpp" int main(int argc, char** argv) { - void *productos; + void * productos; + cargarProductos(productos, "../../Productos.csv"); pruebaDeCargaDeProductos(productos); return 0; |
