lesson

State what a function promises

1 · Learn

A function contract describes inputs, expected output and conditions that must hold. A function that returns a value is different from one that only displays it. Clear contracts make components easier to test and reuse.

For a function called square(n), a suitable contract might accept a number and return n × n without changing other data. The name alone does not guarantee the implementation meets that contract.

InputOutputPreconditionSide effects
Key words and supplied examples.

2 · Worked example

Python def square(n): return n * n returns 25 for square(5). Printing 25 inside a function is not the same as returning 25 to its caller.

3 · Your turn

What should square(-3) return under this contract?

Check your answer

9.

4 · Apply your learning

Write tests for zero, a positive and a negative input, then compare the returned value with the expected one.

Adult guidance and safety

Use an approved sandbox with invented data. Never ask for real passwords, personal records or access to another person's system. These text examples need executable projects and assessed evidence in two languages; reading code alone is not practical mastery.

Open your writing and drawing pad

Write, draw or show your working. Use a mouse, pen or finger. This pad is not a submitted answer.

Not saved to your account. Download your drawing as PNG and your typed notes as TXT before leaving or refreshing. They are separate files. Do not enter private information.

Open a picture saved on this device to draw on it again. Opening replaces the drawing, but Undo can restore it. PNG only, up to 4 MB and 4096 × 4096 pixels. The picture stays in this browser; it is not uploaded. Paper lines in a saved picture become part of that picture.

Drawing is unavailable. Use the typed working area below.

Your pad is empty.

Open a UTF-8 TXT file from this device, up to 40 KB and 10,000 characters. It stays in this browser. Opening can be undone until you type again. Downloads keep a new copy; they do not change the file you opened.

Typed notes are not submitted answers.

Check a calculation · Year 5 onward

Use this only when your teacher or adult allows a calculator for the task. Show your thinking first. It does not replace mental or written arithmetic and does not mark your lesson answer.

Powers, roots and trigonometry · Year 7 onward

Use only when the task allows a calculator. Choose one operation at a time and record your working. Trigonometry here always uses degrees (DEG), not radians. Inverse sine, cosine and tangent return an angle, not a reciprocal. Keep exact fractions and π in answers when requested.

Approximate numerical results use up to 12 significant digits. Inverse sine returns −90° to 90°, inverse cosine 0° to 180°, and inverse tangent −90° to 90°; these are principal values, not every possible solution of a trigonometric equation.

Practice this lesson

Lesson resources

Browse the available practice activities and worksheets for this lesson.

Open course resources

Interactive activity

Year 9 Computing learning routine

H5P
Which routine will help you learn well in Year 9 Computing?

Practice activity. It does not change your saved quiz score.

Your progress

Ready to continue?