From c571cb7df606206675311a773e4077a50f0c0ff2 Mon Sep 17 00:00:00 2001 From: Mitsuo Tokumori Date: Sat, 17 Sep 2022 00:57:54 -0500 Subject: L1 completo. No tan "succinct" que digamos, pero MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Las macros de los stream manipulators ahorran mucho codigo. Definitivamente voy a reusar eso para las siguientes resoluciones. Aun hay muchos aspectos en que mejorar. En cuestion de tiempos, la parte basica la acabe en 1h 40m mas o menos, pero de ahi en hacer las macros, re-leer la fecha como enteros, todo lo de los contadores, y perfeccionando el formato, me demore unas 2-3h mas. Tambien es el primer lab de C++ que resuelvo desde hace 2 aƱos. Definitivamente este curso es pura practica, entender los casos tipo, entender la menera que el profesor quiere que se codifique y no perder el foco en la solucion. Me interesa hacer una solucion en python a ver cuanto tiempo y lineas de codigo se ahorra... --- 2022-2/L1/mitsuo/fun.h | 41 +++++++++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 8 deletions(-) (limited to '2022-2/L1/mitsuo/fun.h') diff --git a/2022-2/L1/mitsuo/fun.h b/2022-2/L1/mitsuo/fun.h index b77fad5..1313a44 100644 --- a/2022-2/L1/mitsuo/fun.h +++ b/2022-2/L1/mitsuo/fun.h @@ -1,10 +1,35 @@ -#define MAXLEN 100 // fixed length strings - void readRecordsWriteReport(); -void writeHeader(char *esp1, char *esp2, char *strfecha); -void readWriteMedicos(); -void readWritePacientes(); -void readWriteMedicinas(int n); -void writeformattedMedico(char *id, char *name); +void writeHeader(char *esp1, char *esp2, int curDate); +void readWriteMedicos( + int curDate, + char *esp1, int &med1Qty, int &pac1Qty, int &medVencida1Qty, + char *esp2, int &med2Qty, int &pac2Qty, int &medVencida2Qty +); +void readWritePacientes( + int curDate, + char *esp, + char *esp1, int &pac1Qty, int &medVen1Qty, + char *esp2, int &pac2Qty, int &medVen2Qty +); +void readWriteMedicinas(int n, + int &medVenCnt, + int curDate, + char *esp, + char *esp1, int &medVen1Qty, + char *esp2, int &medVen2Qty +); +void writeformattedMedico(char *id, char *name, char *esp); void writeformattedPaciente(int i, int dni, char *name); -void writeformattedMedicina(int i, int id, char *name, char *strfecha, int qty); +void writeformattedMedicina(int i, int id, char *name, int venDate, int qty, + int curDate +); + +void writeformattedResumen( + char *esp1, int med1Qty, int pac1Qty, int medVencida1Qty, + char *esp2, int med2Qty, int pac2Qty, int medVencida2Qty +); +void writeformattedResumenLine( + char *esp, int medQty, int pacQty, int medVencidaQty +); + +void separateNameEsp(char *name, char *esp); -- cgit v1.2.3