I am going to step through this tutorial a bit differently. It is usually quite helpful to create all of the anticipated algorithm definitions in the first problem and then copy that problem, making modifications as necessary. You will end up with many values that are not used, but that will not cause any harm. Many of the questions you create, particularly with division, will likely need some conditions, and you can add those as necessary. Similarly, I plan to start with integer definitions, and later I can make some changes if I want to use decimal values. This entire question bank is available at TeachersPayTeachers.

Starting with a new short answer question, go right into Algorithm Definitions. I start with four variables, *a, b, c, *and *d* for single digit numbers. Notice the simple condition *isunique*, which forces each of the variables to have a unique value. Also, it is probably best to avoid using *1* for any of the numbers.

Anticipating some division, I want to set up some multiples that will divide evenly. The variable, *multiplier*, will handle this. Then, *a*multiplier* will be the *product. *Thus, , or vice versa.

From here, it is quite easy to build up a series of order of operations expressions. I start by creating the problem in the equation editor and then create or redefine a variable for the *answer*. This first problem is a good place to begin.

If you want to keep the value of expressions positive, it is worthwhile to create another variable with a bigger number. For example, create *bignumber* with range (19,29) so that *bignumber-a*b *will be positive. You can also force that by creating a condition for *bignumber-a*b* > 0.