Grade 7 · lesson 4 of 4

Document a Function with Its Contract

Match the requested documentation element to its role in the contract.

About 18 minutes, plus any extended practice

Download the grade pack

Supplied materials

  • Paper and pencil; answers may also be spoken or typed.
  • All cases, labels, numbers and rules are supplied on this page. No real account, private information or purchase is needed.

Learn the idea

A function contract states accepted inputs, produced outputs and important conditions. Documentation helps a caller use a helper without guessing implementation details. Our model describes valid inputs and no outside effects. A contract also identifies what is not promised.

Match the requested documentation element to its role in the contract. An example is useful but does not replace an input rule.

Use this supplied case: Accepts a nonnegative whole-number count. Classify this contract statement. The task is to connect the given information to the computing idea. Write a short evidence trail so another learner can reproduce your choice. The simplified case describes the stated model, not every real system.

  1. Represent the supplied worked case with a labeled drawing, table or short trace.
  2. Match the requested documentation element to its role in the contract.
  3. Explain why the worked answer fits and why one alternative does not.
  4. Try the new check and practice cases; revisit the stated rule if your evidence does not match.
Worked example

See the method in action

Accepts a nonnegative whole-number count. Classify this contract statement. The supported answer is Input requirement. Match the requested documentation element to its role in the contract. An example is useful but does not replace an input rule. A function contract states accepted inputs, produced outputs and important conditions. The supplied facts, rather than an assumed real-world detail, determine this paper case. Compare the recorded action or value with the stated rule before choosing an answer.

Your turn

Check your reasoning

Your answer is temporary and is not saved to an account. Download your current answer before leaving or reloading. Written work on paper or in another app stays in your own file.

Helpful tips
  • Match the requested documentation element to its role in the contract.
  • An example is useful but does not replace an input rule.
Returns twice the supplied count. Classify this contract statement.

Feedback appears here after you check. This is practice, not a graded school assessment.

See the answer and explanation

Output guarantee

The supplied case states: Returns twice the supplied count. Classify this contract statement. Under the stated distinction, this identifies Output guarantee. A function contract states accepted inputs, produced outputs and important conditions. Documentation helps a caller use a helper without guessing implementation details. Our model describes valid inputs and no outside effects. A contract also identifies what is not promised. Match the requested documentation element to its role in the contract.

Take it further

Write a contract for count+3 on nonnegative integers. Expected: input 7 returns 10; forbid file/network side effects and specify behavior for invalid input.

Nothing here is saved to an account or sent to a teacher. The answer download includes your current choice and any checked feedback. It does not include choices from the separate More practice section. Download that section separately.

More practice: try new cases

Choose an answer for each problem. Explain your method on paper, then use the feedback to decide what to revisit.

More practice: try new cases
1. Does not write files or change external records. Classify this contract statement.
Need a hint?
  • Match the requested documentation element to its role in the contract.
  • An example is useful but does not replace an input rule.
2. For input 3 the example returns 6. Classify this contract statement.
Need a hint?
  • Match the requested documentation element to its role in the contract.
  • An example is useful but does not replace an input rule.
3. Rejects text as a count. Classify this contract statement.
Need a hint?
  • Match the requested documentation element to its role in the contract.
  • An example is useful but does not replace an input rule.

Your choices are temporary. Feedback appears after you check all the answers.

Nothing here is saved to an account or sent to a teacher. Keep your own notes or download them before leaving. The score describes these questions; it does not certify subject mastery.

Check the subject sources

These LifeStarter passages, scenarios and exercises are authored for this Academy with AI assistance and review. External resources keep their publishers’ terms. A grade label suggests a starting level; it does not establish alignment with your school’s complete requirements.