Transfer practice · Create clampStock(value) that floors negative counts at zero, then sum two independently clamped stocks. A negative stock must not cancel a positive stock.
v3 · Activity 1 of 1 · composition · reuse · 10 min Runs here
Use a familiar idea in a different task. Read the changed requirement before running.
Create clampStock(value) that floors negative counts at zero, then sum two independently clamped stocks. A negative stock must not cancel a positive stock.
Interface: pairPrice(first, second) -> number
| Input | Expected |
|---|---|
Negative and positive-5, 8 | 8 |
Both negative-3, -4 | 0 |
Both present2, 7 | 9 |
local function withFee(base)
return base + 2
end
local function pairPrice(first, second)
return withFee(first) + withFee(second)
end
return pairPriceTwo helper calls apply the same fee consistently. Changing the fee in one place updates both items.
New syntax: calling a function from another function
A helper contains one named rule. A larger function calls it rather than repeating its implementation.
Composition means using the result of one function in another calculation. Keep inputs and returned results visible so the larger behavior is easy to trace.
Here each item costs its base amount plus a fixed packaging charge of 2. Calculate both items with the same helper before adding the results.
Select a word or symbol in this authored example. Your editor draft stays unchanged.
withFeebase
base 2
pairPricefirst, second
withFeefirst second
pairPriceThis is a private experiment copy. It does not replace your answer or complete the activity.
These inputs apply when your scratchpad returns the function described by the activity interface.
Your output will appear here.
Replace this code with the starter? Download your draft to keep a copy.
Your output will appear here.
Sign in with RoCreators to save private progress across devices. Community verification is separate.