Kommen met ijs

Voor nu moeten alle kommetjes verschillend zijn.

Stel je hebt een winkel met 8 ijssmaken. Je kan een kom bestellen met 1, 2 of 3 verschillende bolletjes ijs erin. De volgorde van de bolletjes maakt niet uit: een kom met vanille en chocola is hetzelfde als een kom met chocola en vanille.

  1. Hoeveel verschillende kommen met 2 bolletjes zijn er? Vind een systematische manier om ze allemaal op te schrijven.
  2. Probeer een manier te vinden om het probleem op te lossen met recursie.
  3. Het is handig om het verbindblok van Hoofdstuk 8 Les 2 Pagina 3: Partition Sort te gebruiken.
    Bouw een blok dat een lijst met lijsten rapporteert, namelijk alle mogelijke kommen met 2 bolletjes, met als invoer een lijst met alle mogelijke smaken.
Het blok dat je gebouwd hebt voor kommen met twee bolletjes kan je helpen met het blok voor kommen met drie bolletjes.
  1. Bouw een blok dat een lijst geeft met alle mogelijke kommen met 3 bolletjes, met als invoer een lijst met alle smaken. Onthoud dat de volgorde van de bolletjes niet uitmaakt, dus bedenk hoe je zorgt dat je niet twee keer dezelfde kom tegenkomt.
  2. Een kom heeft óf geen chocola óf wel chocola...
    Generaliseer door een blok te bouwen dat een lijst geeft van alle kommen met n bolletjes ijs, waar n een extra invoer is voor het aantal bolletjes. Hiervoor heb je sowieso recursie nodig!
  1. Probeer het nu zonder de beperking dat ieder bolletje een andere smaak moet hebben. Een kom met bijvoorbeeld drie keer chocola of twee keer vanille en één keer chocola is nu ook mogelijk.
Terug Volgende