A frieze pattern is a decoration made from repeated copies of a basic unit, arranged in a row. Figure 1 shows two examples from France in about 1820. Figure 1 Example friezes a.Provide a decomposition of the problem of drawing a frieze pattern, assuming for the moment that the basic unit is repeated just 7 times. At this stage you are not trying to produce a solution, just break the problem down into smaller parts. We are looking for a decomposition that could apply to any frieze, so you should for now ignore the details of how the basic unit will be drawn. You will need to use a loop.
A frieze pattern is a decoration made from repeated copies of a basic unit, arranged in a row. Figure 1 shows two examples from France in about 1820.
-
a.Provide a decomposition of the problem of drawing a frieze pattern, assuming for the moment that the basic unit is repeated just 7 times. At this stage you are not trying to produce a solution, just break the problem down into smaller parts. We are looking for a decomposition that could apply to any frieze, so you should for now ignore the details of how the basic unit will be drawn. You will need to use a loop.
(4 marks)
In the remainder of this question, you will design and implement a
In this frieze the length of each horizontal and vertical segment is 25.
-
b.Next refine your decomposition, adding more detail so that it becomes an
algorithm . This is not yet a program, so you should write the steps in English rather than as Python statements. To draw the basic unit of the frieze you will need to use a second loop.(8 marks)
-
c.Translate your algorithm into Python, including appropriate comments. Name your Python file Q2_OUCU_c.py, where ‘OUCU’ is your OU computer username, e.g. abc123. Run your program to test it produces the basic unit shown in Figure 2.
Paste your Python code into your solution document as text and state whether it produced the expected output.
Also include the code file in your TMA zip file.
Your answer must be a translation of your algorithm from part b., otherwise marks will be lost.
Here and in part d. below you should use only techniques and language features taught in TM112. If you decide to use techniques or language features not covered in the module, you must give a justification for this, or marks will be lost.
(11 marks)
-
d.Save the code file again, this time as Q2_OUCU_d.py. Then modify it so that repeats the basic unit number_of_units times, where number_of_units is a variable which is initialised to 7, but can be initialised to a different value as required.
Run your program using different values of number_of_units to test that it produces the expected output.
Paste your Python code into your solution document as text and state whether it produced the expected output.
Step by step
Solved in 2 steps
Translate your
Paste your Python code into your solution document as text and state whether it produced the expected output.
Also include the code file in your TMA zip file.
Your answer must be a translation of your algorithm from part b., otherwise marks will be lost.
Here and in part d. below you should use only techniques and language features taught in TM112. If you decide to use techniques or language features not covered in the module, you must give a justification for this, or marks will be lost.