[Opening Page] [Table
of Contents] [Project Overview] [Professional Development] [Number Sense Activities] [Evaluation] [Sources]
[MSMME info] [Contact
Author]
It is important to point out that knowing basic math facts is a part of developing that understanding of number that is critical to number sense. Drill is necessary, but do not overemphasize timed drills. I must admit I am somewhat of a programmer at heart and believe in letting a machine work for me when at all possible. If you the students at your school have access to programmable calculators, you can probably find a student quite savvy in programming. I’ve found that $5 will buy quite a bit of programming time from a high school student, in addition to rewarding a student for his expertise. It’s a great way to illustrate the transitive property: knowledge=power, power=money, therefore, knowledge=money!
Description
Needed Materials: Programmable calculators for each student, or plan an activity so one group can use the calculators while another group does something else with you. I sometimes have students keep track of the problems they miss on a piece of paper in order to help troubleshoot basic fact gaps.
Programs for the TI 83 (or 73): Addition, Subtraction, Multiplication, Division
Directions:
1. Teach the students how to access the appropriate program on the calculator. Choose the program you want to use. The programs can be used in a timed setting, to do a set number of problems, or to reach a set percent correct.
2. If desired, have the students write down any problem they miss when the practice is not timed. They should record their final score, timed or not. You may want them to keep this information in a journal so they can track their own progress. For younger students, I have tried having them write a J for each correct problem and then write the problem out if they miss it—they seem to like that better because they see lots of smiley faces on every assignment. However, some students soon tire of writing so much.
3. You may want to keep a log of student scores as well in order to track and praise progress on an individual basis.
The mathematical goal is for the student to practice basic number facts in a self-paced, non-threatening setting.
Comment on the overall effectiveness of this activity. Then use the form below to reflect on the activity from the perspective of both the teacher and the student. Give the lesson points based on how well it went--each question is worth up to 4 points.
Students enjoy using the calculators, I believe because they have the feel of a Gameboy type device. I have used the basic fact programs in grades 4-8; each time the students were eager to beat their last score and didn’t want to set the calculators aside to move to the next activity. I have had particular success when using these programs with special needs students.
_4_ Was the purpose of the activity clear to me?
_4_ Was the purpose of the activity clear to my students?
_1_ Did the activity support a range of learning styles?
_4_ Were the students engaged during this activity?
_13_ Total points (out of 16)
The purpose (objective) of the activity was…
I communicated to the students why we were doing the activity by…
…telling them I wanted them to help themselves get better at [whatever skill we were practicing—in the fourth grade, the first time it was subtraction facts to 18]. To do so we would use these “special” calculators. Several of the students knew about these calculators because they have older siblings who check them out from the high school and bring them home to do work.
The part of the lesson that was student-centered was…
…each student working at his own pace, working against his own best score.
Remarks in […] on the right of the screen are comments to assist you in understanding the program and are not included in the code on the calculator.
These programs run until the student enters a “stop” command. Because of that, they can be used for timed practice if you use a stopwatch to start and stop the practice activity. (The TI calculators do not have an internal clock, so they can’t be programmed to run a particular amount of time on their own.) I try never to compare the students to each other on timed events, but that doesn’t mean they won’t compare amongst themselves. You will need to decide how to deal with that in your own classroom.
Be aware that each time the program is run, the stat lists are cleared, so the previous results are gone, forever. They really have to pay attention at the end of the session if you want to record their results. Also be aware that this program does not prevent them from typing the problem itself in and letting the calculator give the answer. I haven’t had anyone figure that out yet, but it is a possibility! I am working on a NOCHEAT subroutine. Email me if it becomes an issue.
Additional programs for subtraction, multiplication & division are VERY similar. They are included below, but the most efficient way to get them in your calculator is use a graphlink cable and the free program supplied by TI. Type (it may even be possible to cut and paste from this page) one of the below programs in the GraphLink editor. If you cut and paste, erase the comments. Download the program to your calculator. In the editor, make the few changes to change operations, change the name of the program and download it to your calculator again. Do this for each program you would like to use.
These programs work on the TI 83. The TI 73 calculator will perform these programs with VERY FEW alterations. Use your user manual to help with any syntax errors or contact me if you have questions.
ELEMADD [Elementary
addition]
:ClrList
L1, L2, L3 [Clears
stat lists for recording problems missed]
[L1
& L2 contain the addends, L3 the student response]
:ClrHome
:Output(1,1,”+”) [“decorations”
for the intro screen]
:Output(8,1,”+”)
:Output(1,16,”+”)
:Output(8,16,”+”)
:Output(4,5,”ADDITION”)
:Pause
:
:0 ® C [C
counts correct answers]
:0® E [E
counts incorrect answers]
:0 ® H [H
is their response to the stated problem, entering 899 will exit the program]
:0 ® N [N
is the problem # currently being solved]
:
:While
H¹899 [Beginning
of program loop]
:ClrHome
:N+1®N
:RandInt(0,10) ® A [Picks
a random integer; 0 = smallest; 10 = largest]
:RandInt(0,10) ® B [Modify
these values for different grade levels]
: [RandInt(-10,10)
produces integers from –10 to 10 inclusive]
:Output(1,11,”No.”) [This block of code
prints the problem on the screen]
:Output(1,14,N)
:Output(4,5,A)
:Output(4,9,”+”)
:Output(4,11,B)
:Input
H [Gets
the students response; 899 exits the program]
:If
H=899
:Then
:Goto
10
:Else
:If
H=A+B [Give
credit if correct]
:Then
:C+1® C
:ClrHome
:Output(4,5,”Correct!”)
:Pause [so
they can see the praise]
:
:Else
:E+1® E [Count
wrong and record in stat editor]
:A® L1(E)
:B®L2(E)
:H®L3(E)
:ClrHome
:Output(1,3,
“Sorry, wrong—“) [show correct
response]
:Output(3,1,”You
entered”)
:Output(3,13,H)
:Output(7,1,A)
:Output(7,5,”+”)
:Output(7,8,B)
:Output(7,11,”=”)
:Output(7,13,
A+B)
:Pause [so
they can see the correction]
:End [End
of Else wrong branch]
:End [End
of Else right branch]
:End [End
of While not 899 loop]
:
:Lbl
10 [Jump
point to end practice]
:ClrHome
:Output(2,3,”You
scored”) [Reports score
as a percent]
:Output(5,3,C/(C+E)*100)
:Output(5,7,”
percent”)
:Pause
:
:ClrHome [You
will need to provide instructions to your]
:Output(3,4,”Take
this”) [students
about what to do when they get to]
:Output(4,2,”calculator
to”) [this point—when I
want to record the score, I]
:Output(5,3,”your
teacher.”) [have them
come to me; otherwise, they record it and go on.]
:Pause
:
:ClrHome
:C®L1(E+1) [The
last entry in stat list 1 will be the # correct]
:N-1®L2(E+1) [The
last entry in stat list 2 will be the # completed]
:Output(1,3,”Score:”)
:Output(3,2,C)
:Output(3,6,”out
of”)
:Output(3,13,N-1)
:
:Pause
:
ELEMSUBT [Elementary
subtraction]
:ClrList
L1, L2, L3 [Clears
stat lists for recording problems missed]
[L1
& L2 the problem numbers, L3 the student response]
:ClrHome
:Output(1,1,”-”) [“decorations”
for the intro screen]
:Output(8,1,”-”)
:Output(1,16,”-”)
:Output(8,16,”-”)
:Output(4,4,”SUBTRACTION”)
:Pause
:
:0 ® C [C
counts correct answers]
:0® E [E
counts incorrect answers]
:0 ® H [H
is their response to the stated problem, entering 899 will exit the program]
:0 ® N [N
is the problem # currently being solved]
:
:While
H¹899 [Beginning
of program loop]
:ClrHome
:N+1®N
:RandInt(0,10) ® A [Picks
a random integer; 0 = smallest; 10 = largest]
:Repeat(B<A) [Ensures
that A > B]
:RandInt(0,10) ® B [Note: For JH neg & pos practice, you don’t
want that guarantee.]
:End [Leave
out the Repeat & End lines; use RandInt(-10,10) for both.]
:
:Output(1,11,”No.”) [This block of code
prints the problem on the screen]
:Output(1,14,N)
:Output(4,5,A)
:Output(4,9,”-”)
:Output(4,11,B)
:Input
H [Gets
the students response; 899 exits the program]
:If
H=899
:Then
:Goto
10
:Else
:If
H=A-B [Give
credit if correct]
:Then
:C+1® C
:ClrHome
:Output(4,5,”Correct!”)
:Pause [so
they can see the praise]
:
:Else
:E+1® E [Count
wrong and record in stat editor]
:A® L1(E)
:B®L2(E)
:H®L3(E)
:ClrHome
:Output(1,3,
“Sorry, wrong—“) [show correct
response]
:Output(3,1,”You
entered”)
:Output(3,13,H)
:Output(7,1,A)
:Output(7,5,”-”)
:Output(7,8,B)
:Output(7,11,”=”)
:Output(7,13,
A-B)
:Pause [so
they can see the correction]
:End [End
of Else wrong branch]
:End [End
of Else right branch]
:End [End
of While not 899 loop]
:
:Lbl
10 [Jump
point to end practice]
:ClrHome
:Output(2,3,”You
scored”) [Reports score
as a percent]
:Output(5,3,C/(C+E)*100)
:Output(5,7,”
percent”)
:Pause
:
:ClrHome [You
will need to provide instructions to your]
:Output(3,4,”Take
this”) [students
about what to do when they get to]
:Output(4,2,”calculator
to”) [this point—when I
want to record the score, I]
:Output(5,3,”your
teacher.”) [have them
come to me; otherwise, they record it and go on.]
:Pause
:
:ClrHome
:C®L1(E+1) [The
last entry in stat list 1 will be the # correct]
:N-1®L2(E+1) [The
last entry in stat list 2 will be the # completed]
:Output(1,3,”Score:”)
:Output(3,2,C)
:Output(3,6,”out
of”)
:Output(3,13,N-1)
:
:Pause
:
ELEMMULT [Elementary
multiplication]
:ClrList
L1, L2, L3 [Clears
stat lists for recording problems missed]
[L1
& L2 contain the addends, L3 the student response]
:ClrHome
:Output(1,1,”*”) [“decorations”
for the intro screen]
:Output(8,1,”*”)
:Output(1,16,”*”)
:Output(8,16,”*”)
:Output(4,2,”MULTIPLICATION”)
:Pause
:
:0 ® C [C
counts correct answers]
:0® E [E
counts incorrect answers]
:0 ®:
:While
H¹899 [Beginning
of program loop]
:ClrHome
:N+1®N
:RandInt(0,10) ® A [Picks
a random integer; 0 = smallest; 10 = largest]
:RandInt(0,10) ® B [Modify
these values for different grade levels]
: [RandInt(-10,10)
produces integers from –10 to 10 inclusive]
:Output(1,11,”No.”) [This block of code
prints the problem on the screen]
:Output(1,14,N)
:Output(4,5,A)
:Output(4,9,”*”) [I prefer to
use * for multiplication instead of X to eliminate confusion with variables.]
:Output(4,11,B)
:Input
H [Gets
the students response; 899 exits the program]
:If
H=899
:Then
:Goto
10
:Else
:If
H=A*B [Give
credit if correct]
:Then
:C+1® C
:ClrHome
:Output(4,5,”Correct!”)
:Pause [so
they can see the praise]
:
:Else
:E+1® E [Count
wrong and record in stat editor]
:A® L1(E)
:B®L2(E)
:H®L3(E)
:ClrHome
:Output(1,3,
“Sorry, wrong—“) [show correct
response]
:Output(3,1,”You
entered”)
:Output(3,13,H)
:Output(7,1,A)
:Output(7,5,”*”)
:Output(7,8,B)
:Output(7,11,”=”)
:Output(7,13,
A*B)
:Pause [so
they can see the correction]
:End [End
of Else wrong branch]
:End [End
of Else right branch]
:End [End
of While not 899 loop]
:
:Lbl
10 [Jump
point to end practice]
:ClrHome
:Output(2,3,”You
scored”) [Reports score
as a percent]
:Output(5,3,C/(C+E)*100)
:Output(5,7,”
percent”)
:Pause
:
:ClrHome [You
will need to provide instructions to your]
:Output(3,4,”Take
this”) [students
about what to do when they get to]
:Output(4,2,”calculator
to”) [this point—when I
want to record the score, I]
:Output(5,3,”your
teacher.”) [have them
come to me; otherwise, they record it and go on.]
:Pause
:
:ClrHome
:C®L1(E+1) [The
last entry in stat list 1 will be the # correct]
:N-1®L2(E+1) [The
last entry in stat list 2 will be the # completed]
:Output(1,3,”Score:”)
:Output(3,2,C)
:Output(3,6,”out
of”)
:Output(3,13,N-1)
:
:Pause
:
ELEMDIV [Elementary
division]
:ClrList
L1, L2, L3 [Clears
stat lists for recording problems missed]
[L1
& L2 contain the addends, L3 the student response]
:ClrHome
:Output(1,1,”/”) [“decorations”
for the intro screen]
:Output(8,1,”/”)
:Output(1,16,”/”)
:Output(8,16,”/”)
:Output(4,5,”DIVISION”)
:Pause
:
:0 ® C [C
counts correct answers]
:0® E [E
counts incorrect answers]
:0 ® H [H
is their response to the stated problem, entering 899 will exit the program]
:0 ® N [N
is the problem # currently being solved]
:
:While
H¹899 [Beginning
of program loop]
:ClrHome
:N+1®N
:RandInt(0,10) ® A [Picks
a random integer; 0 = smallest; 10 = largest]
:Repeat(B ¹0) [Prevents
division by 0 when using –10 to 10 for the range]
:RandInt(0,10) ® B [Modify
these values for different grade levels]
:End [RandInt(-10,10)
produces integers from –10 to 10 inclusive]
:
:Output(1,11,”No.”) [This block of code
prints the problem on the screen]
:Output(1,14,N)
:Output(4,5,A*B)
:Output(4,9,”/”)
:Output(4,11,B)
:Input
H [Gets
the students response; 899 exits the program]
:If
H=899
:Then
:Goto
10
:Else
:If
H=A*B/B [Give
credit if correct]
:Then
:C+1® C
:ClrHome
:Output(4,5,”Correct!”)
:Pause [so
they can see the praise]
:
:Else
:E+1® E [Count
wrong and record in stat editor]
:A® L1(E)
:B®L2(E)
:H®L3(E)
:ClrHome
:Output(1,3,
“Sorry, wrong—“) [show correct
response]
:Output(3,1,”You
entered”)
:Output(3,13,H)
:Output(7,1,A*B)
:Output(7,5,”/”)
:Output(7,8,B)
:Output(7,11,”=”)
:Output(7,13,
A*B/B)
:Pause [so
they can see the correction]
:End [End
of Else wrong branch]
:End [End
of Else right branch]
:End [End
of While not 899 loop]
:
:Lbl
10 [Jump
point to end practice]
:ClrHome
:Output(2,3,”You
scored”) [Reports score
as a percent]
:Output(5,3,C/(C+E)*100)
:Output(5,7,”
percent”)
:Pause
:
:ClrHome [You
will need to provide instructions to your]
:Output(3,4,”Take
this”) [students
about what to do when they get to]
:Output(4,2,”calculator
to”) [this point—when I
want to record the score, I]
:Output(5,3,”your
teacher.”) [have them
come to me; otherwise, they record it and go on.]
:Pause
:
:ClrHome
:C®L1(E+1) [The
last entry in stat list 1 will be the # correct]
:N-1®L2(E+1) [The
last entry in stat list 2 will be the # completed]
:Output(1,3,”Score:”)
:Output(3,2,C)
:Output(3,6,”out
of”)
:Output(3,13,N-1)
:
:Pause
: