Classic Computer Magazine Archive ANTIC VOL. 3, NO. 6 / OCTOBER 1984

PLUS MINUS

By WALTER BULAWA, PH.D & CAROL BULWA

A simple arithmetic program for young children. The BASIC program runs on all Atari computers of any memory configuration.  Antic Disk Subscribers RUN "D:PLSMINUS.BAS"
Plus Miunus screen
In teaching elementary arithmetic to children, a technique almost universally used is to give physical examples incorporating things that the child can relate to.  A teacher might say "If Andrew had four blocks and Jennifer gave him two blocks, then how many blocks would he have?".  In mentally solving the problem, Andrew would probably visualize a group of four blocks, count them and continue counting through another imaginary group of two more blocks to arrive at the answer.
   The program Plus Minus was written to provide a child who has recently been introduced to addition and subtraction with a learning aid using this form of visual support.  No number value presented will be less than zero or greater than fourteen.

INSTRUCTIONS
After you type in listing 1, use TYPO to find any typing errors and SAVE a backup copy.
   Type RUN.  The program will ask you to add or subtract a pair of numbers on the screen.  Type in your answer.  You need not press [RETURN].  If you have answered the problem correctly, the computer will print "CORRECT" and give you another equation.  If you answer an equation incorrectly, try again.  The computer will not move to the next problem until you've correctly answered the current one.

Walter and Carol Bulawa are married and have two children.  They have owned their Atari since early 1983 and wrote Plus Minus to help their five-year-old son learn arithmetic.

TAKE-APART

100- 180  Randomly selects the uppermost value (A) and then randomly selects the answer (C).  The remaining value (8) is computed as the difference between A and C in order to avoid negative numbers in the answer.  The variable S is the index of the sign (arithmetic operation) in the sign character string SIGN$.

192- 194  Strings are used to display the problem values so that they may be properly placed on the screen.

208- 210  Selects the character from the string CHNEW$ that is to be used as the display object.  Although there are eleven objects, each is represented in CHNEW$ in its four forms (upper-case, upper-case inverse, lowercase, lower-case inverse) so that the object may appear in different colors at different times.

220- 280  Erases the previous problem, displays the values that comprise the current problem and displays the corresponding number of objects to the right of each value.

310- 332  Accepts on character input from the keyboard.

338- 350  Determines whether the input character matches a remaining character in the answer string.

352- 356  If the input character does not match a character in the answer string then output a descending tone and await further input.

359- 370  If the input character matches a remaining character in the answer string, display the character in its proper position in the problem, put a blank in the copy of the answer string so that the same input character won't trigger another correct response, and finally, if not all the answer characters have been entered go back for input.

400- 470  Slide the number of objects, equal to the value of the answer, in from the right.

480- 490  Pause.  Erase CORRECT and present a new problem.

8000- 8999  Display title page, play music, and await press of START.

9000- 9099  Set the graphics mode and poke the location of the new character set.

10000-10200  Redefine selected characters of a new character set.  The first two data statements define the two characters that are used to form the line above and answer and the line separating the problem from the objects.  The next eleven data statements define the objects to display.  The last fourteen data statements define the numbers 1 through 14 as custom characters, each number being displayed within a single character.

Listing: PLSMINUS.BAS Download