Volem enviar una postal per correu. El cost de l’enviament és de cèntims () i podem usar segells de i cèntims de valor per cobrir el preu. Com l’espai per posar els segells és limitat, volem saber el nombre mínim de segells necessaris per satisfer l’enviament sense perdre un cèntim.
Usant la definició
struct Stamps {
int stamp7;
int stamp4;
};
implementeu una funció recursiva
Stamps min_stamps(int n)
que retorni el nombre mínim de segells de valors 7 i 4 necessaris per satisfer un preu de cèntims (. Per exemple, per , els valors dels atributs o camps del resultat de min_stamps han de ser 6 i 4.
Per completar el cas recursiu, observeu que les crides recursives sempre retornen una tupla Stamps amb el valor de l’atribut stamp4 com a màxim 6.
Aquest problema és un exemple d’ús de tuples per poder definir funcions amb resultat no representable de forma directa com un únic valor.
Només cal enviar el procediment demanat; el programa principal serà ignorat.
Seguiu estrictament la definició dels tipus de l’enunciat.