Origami Olympic Rings

Make Origami olympic rings either in celebration of the Olympics, or just because you like Origami.

At the same time learn a little about algorithms and how they are structured.

DOWNLOAD THE INSTRUCTIONS TO MAKE MODULAR ORIGAMI OLYMPIC RINGS (by Ho)

To make origami olympic rings you need three sets of instructions, one set to make the modular piece, one to make a ring from those modular pieces and the last to tell you how to put a series of rings together to make the Olympic ring pattern.

SOME LINKED COMPUTER SCIENCE

Algorithms are steps that, to work, must be followed precisely and in the right sequence. Computers are just machines designed to do exactly that. They follow instructions precisely. Were you able to follow the steps to make the Origami Olympic Wreath? Our instructions are split in to two sets of instructions – so two algorithms. The first set of instructions explain how to make a modular piece. We just write those instructions out once. The other instructions require you to follow those instructions for a single piece lots of times.

Programs are split into parts in a similar way. We call the separate named sets of instructions “procedures”, “functions” or “methods”. Instructions that tell you to follow a named set of instructions is referred to as a “call” to those instructions. Our instructions for the olympic rings essentially call the instructions for the modular piece lots of times. They also have another level of decomposition in that they call the instructions to make a ring 5 times, and it is those instructions that call the instructions to make a ring.

Of course once you have written instructions to do something like a modular piece, you can use it then in other ways without having to go to the mental effort of working out those instructions again. In particular, the same instructions to make the origami modular piece can be used to make an olympic wreath as here. This is another reason modular decomposition like this is useful to programmers. It allows prewritten code to be reused for different purposes in a program (or in different programs.