Twee discrete afbeeldingen $$f$$ en $$g$$ met beiden als argumenten gehele getallen, worden respectievelijk via de
woordenboeken $$v$$ en $$w$$ gespecificeerd ($$v$$ bevat dus $$i \mapsto f(i)$$ en $$w$$ bevat dus $$i \mapsto g(i)$$).
Programmeer een functie samenstelling()
die een woordenboek als resultaat teruggeeft, waarbij dit
resultaat de samengestelde
afbeelding $$f \circ g$$ voorstelt (dit woordenboek bevat dus $$i \mapsto (f \circ g)(i)$$). Hiertoe bouw je een nieuw woordenboek met alle argumenten van $$g$$, en bereken
je voor die argumenten de samenstelling $$f$$ na $$g$$. Indien je hierbij een argument ontmoet waarvoor de samenstelling
niet bestaat, dan codeer je dit door als waarde '?'
in het woordenboek te stockeren.
v = {i:2*i for i in range(-5, 5)} w = {i:i + 1 for i in range(-5, 5)} samenstelling(v, w) = {0: 2, 1: 4, 2: 6, 3: 8, 4: '?', -1: 0, -5: -8, -4: -6, -3: -4, -2: -2} samenstelling(w, v) = {0: 1, 1: 3, 2: 5, 3: '?', 4: '?', -1: -1, -5: '?', -4: '?', -3: '?', -2: -3}