The Mathematica Journal
Departments
Download This Issue
Home
Feature Articles
Graphics Gallery
Tricks of the Trade
In and Out
Columns
The Mathematica Programmer
New Products
New Publications
Classifieds
Calendar
News Bulletins
Editor's Pick
Mailbox
Letters
Write Us
About the Journal
Staff and Contributors
Submissions
Subscriptions
Advertising
Back Issues

Basic Features of Exercise Maker

In order to describe the basic functionality of Exercise Maker, let us use an example. The "Add Two Matrices" exercise has been opened as shown in Figure 2a. The exercise window has two scrolling panes. The left-hand pane displays the problem statement, while the right-hand pane displays the answer template, which indicates what kind of answer is expected. In this example students are expected to type in a matrix C, which is the sum of A and B. Then they have to answer the questions "Is C diagonal?," "Is C lower triangular?," and "Is C upper triangular?" by checking a box for a "Yes" answer or leaving it empty for a "No" answer. At the bottom of the window, there are iconic buttons that students can press (from left to right) to see the definition of an unknown concept, get hints, have their answer checked, or see the right answer.

[Graphics:../Images/index_gr_5.gif]

Figure 2a. An exercise displayed by EM. Students type their answer into the template and have it checked.

[Graphics:../Images/index_gr_6.gif]

Figure 2b. An exercise displayed by EM. The same window after the SEE button has been pressed.

EM establishes certain rules for the design of exercises. The underlying principle is that each exercise has to be designed as a collection of objects. These objects have graphical representations maintained by EM, but they are also represented as Mathematica expressions. The main events during the life cycle of the objects for any exercise are as follows.

· The generating program is evaluated and an expression, which is a full definition of the objects, is loaded into the kernel.
· EM creates graphical user interface (GUI) representations of the objects by interpreting this expression.
· The current state of the GUI objects--what the user has typed in or which boxes have been checked, for example--is translated back to expressions when checking of the answer is initiated.

The verifying program checks the answer by processing these expressions.

Of course, the types of the building objects have to be among the set of types known to EM. For matrix algebra those "known" types are

· Matrix
· MatrixEntry
· CheckBoxes
· RadioControls

Although the number of "known" object types is rather small, it is possible to design quite a wide range of exercises on matrix algebra. Matrix objects are used inside the problem statement to allow us to generate the matrices in it. Objects belonging to the rest of the object types should only be used to build the answer template. Each MatrixEntry object allows a matrix to be entered as a part of the answer (two objects would be needed for two matrices in the answer). Yes/No questions and multiple-choice questions are handled using CheckBoxes or RadioControls objects, respectively. If you look again at the sample "Add Two Matrices" exercise in Figure 2, you may notice that two objects of type Matrix have been used for the problem statement (matrices A and B are their visual representations). However, the answer template has been made up of one object of type MatrixEntry (the input box labeled C) and one of type CheckBoxes (the three check-boxes labeled "Diagonal," "Lower triangular," and "Upper triangular").


Converted by Mathematica      October 5, 1999

[Prev Page][Next Page]