Defining and Using Procedures

Defining and Using Procedures in Logo Language

In Logo programming, a procedure is a set of instructions that can be executed whenever needed. Procedures help organize code into manageable sections, allowing for reuse and better readability. This topic will cover how to define and use procedures effectively in Logo.

What is a Procedure?

A procedure is essentially a function or method that encapsulates a series of commands. In Logo, procedures can take inputs, which are called parameters, and can return outputs. They allow you to perform complex tasks with a simple command.

Benefits of Using Procedures

- Modularity: Break down your code into smaller, more manageable parts. - Reusability: Write a piece of code once and use it multiple times throughout your program. - Readability: Makes your code more organized and easier to understand.

Defining a Procedure

To define a procedure in Logo, you use the to keyword followed by the procedure name and a list of parameters (if any). The syntax is as follows:

`logo to procedureName :parameter1 :parameter2 ; commands go here end `

Example of a Simple Procedure

Let’s create a procedure called square that takes a number as a parameter and draws a square of that size.

`logo to square :size repeat 4 [forward :size right 90] end `

In this example: - square is the name of the procedure. - :size is the parameter that represents the length of the sides of the square. - The repeat command executes the commands inside the brackets four times to draw the square.

Using a Procedure

Once a procedure is defined, it can be called simply by its name followed by any required parameters.

Calling the Procedure

To draw a square with a side length of 100, you would call the square procedure as follows:

`logo square 100 `

This command instructs the turtle to draw a square with each side measuring 100 units.

Procedures with Multiple Parameters

You can define procedures that accept multiple parameters as well. For example, let’s create a procedure rectangle that takes two parameters for width and height.

`logo to rectangle :width :height repeat 2 [forward :width right 90 forward :height right 90] end `

To use this procedure, you would call it like this:

`logo rectangle 150 100 `

This command instructs the turtle to draw a rectangle with a width of 150 units and a height of 100 units.

Conclusion

Procedures are an essential part of programming in Logo as they enhance modularity, reusability, and readability. By mastering procedures, you can create more complex and efficient programs.

Practical Example

Consider creating a drawing program where you want to draw multiple squares of different sizes. Instead of writing the drawing code for each square, you can simply call your square procedure with different parameters:

`logo square 50 square 100 square 150 `

This approach saves time and reduces errors in your code.

Back to Course View Full Topic