Pregunta 1.a · Prácticas de programación UOC 2021

Tema: Especificación: precondiciones y postcondiciones · Del examen Prueba de síntesis enero 2021 (2021)

Enunciado

Partiendo del modelo de datos de la gestión de espacios de trabajo compartido (coworking), se definen las siguientes constantes y tipos:

const

MAX_ANNEXES: integer:= 3;

end const

type

tPartner = record

id: integer;

name: string;

discount: integer;

end record

tContractAnnex = record

idWorkSpace: integer;

price: real;

end record

tContract = record

idPartner: integer;

month: integer;

year: integer;

annexesSet: vector[MAX_ANNEXES] of tContractAnnex;

numAnnex: integer;

end record

tCoworking = record

partnersSet: pointer to tPartner;

numPartners: integer;

contractsSet: pointer to tContract;

numContracts: integer;

end record

end type

Se plantea la especificación de la siguiente función:

function top_clients (c: tCoworking; x: integer): integer

Dicha función computa y retorna la cantidad de socios ( partners) que cuentan con más de xx contratos que posean el número máximo permitido de anexos.

a. Indica las precondiciones formales requeridas por la función top_clients considerando que la empresa dispone como mínimo de un socio y que el valor de xx es estrictamente mayor que cero. Justifica la formulación en una o dos líneas.

Enunciado: Pregunta 1.a · Prácticas de programación UOC 2021

Solución

Según los criterios oficiales de corrección

a. Indica las precondiciones formales requeridas por la función top_clients

Solución: {Pre: c.numPartners >= 1 and c.numContracts >= 0 and x > 0 and c.partnersSet <> nil}

Justifica la formulación en una o dos líneas.

Solución: Se requiere garantizar que exista al menos un socio en la estructura (numPartners >= 1) con su memoria correctamente referenciada, y que el umbral comparativo x sea estrictamente positivo (x > 0), conforme a la especificación del enunciado.

La explicación paso a paso, hecha con IA, es Premium. Premium

Resuélvelo aquí mismo: corrección automática, pistas y solución paso a paso.

‹ Pregunta 1.a · 2021 · Pregunta 1.a · 2021 ›

Más ejercicios de Especificación: precondiciones y postcondiciones