PLUS MINUS
By WALTER BULAWA, PH.D & CAROL BULWAA 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"
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