Simon2 for CX II(11 Feb 2020) Now with audio. The first problem
contains simon( ) which uses the TIInnovator SOUND device.
Problem 2 contains simon1( ) which works with an amplified
speaker like a BoomTouch or any portable, powered, amplified
speaker connected to the OUT1 port of the TIInnovator using a
homemade Grove to aux plug cable. The tones are true to the
original Simon device. Maintains a 'high score' so be sure to
save the doc if you reach a new high score.

Snake for CX II

Tilings for CX II(11.19.2019) A project suggested by some of Steve Phelps' Twitter postings. Here are some TIBasic programs using the Draw tools that generate various tilings on the screen. Try a search for "Truchet Tiles".The argument for each program is the number of tiles horizontally. The tiles are square and are scaled to fill the screen.Each program runs by itself (controlled by a Wait statement) except for the colorful qarcs2 program where you press [enter] to advance. All programs end by pressing the [esc] key. 
Connect 4 for CX II(24 Sep 2019) The classic game for two players. Use the arrow keys to move the piece left or right, press [enter] to drop it in. Game ends when there's a winner or a draw (board is full). I often lose to my 6 year old grandson :) 
Implicit Relations II(30 Aug 2019) This document only works on TINspire CX II models. The program implicit() draws a picture of any implicit relation in x and y. Set your relation equal to zero and use that expression for f(x,y) in the program. Remember to press ctrlB or ctrlR when editing any program. The program scans the screen both horizontally and vertically to detect a change in sign of the expression. When a change occurs a point is plotted. Edit xmin, xmax, ymin, and ymax in the program to set the viewing window. Error trapping is not implemented (yet) so watch out for undefined values.There are several example relations included in the program. Just comment out (press ctrlT on the line) the ones below the one you want to graph or write your own relation at the bottom of the collection. 
CX II Draw demos(3.6.2019) NEW for the TINspire CX II platform
only: this zip file contains 18 .tns files
containing many programs that demonstrate some of the
capabilities of the new Program Editor's Draw tools.

Approximating irrationals with
fractions
(2.13.2019) Inspired by a discussion on the TINspire Google Group. This document
contains two algorithms for converting decimals to fractions.
The discussion started with trying to understand the difference
between the TI84 and the TINspire
‘convert to fraction’ feature but members quickly addressed the
opportunity to explain the process through programming.
Landy Godbold suggested looking at ‘Farey sequences’ (included) and Csaba Tizedes offered an elegant algorithm that most HS students could grasp (included).This document illustrates the value of ALGORITHMS and is not intended replace or even to compete with the builtin features of the TINSpire platform. 

PI Darts
(3.14.2018) The random method for approximating PI. Use the slider to increase or decrease the number of darts tossed. A random point in the square [(0,0)x(1,1)] is chosen. A 'hit' is inside the quartercircle. The ratio of 'hits' to total is used to approximate PI by multiplying the ratio by 4. Controlled by a program running in a Notes app.


Spirograph
(201802) Here's a tool for exploring hypotrochoids. There are two problems in the document: the first uses ordinary parametric equations; the second uses scatterplots. The scatterplot method for generating parametric curves gives you awesome control over the domain of the parametric functions: tmin, tmax, and tstep can be defined as variables and even controlled with sliders. Problem 2 has a slider for tmax which results in the effect of actually 'drawing' the curve dynamically. About the parameters r, k, and l:
This document is saved in 'computer view' but works in handhelds as well. 

Approximate
PI Using Phi
(14 Mar 2018) Initially developed by Josh Mize. An interactive demonstration of Archimedes' derivation of the area of a circle and the first accurate approximation for pi ( circa 225BC) starting with a regular pentagon and the Golden Ratio (phi) then doubling the number of sides in each step. Must read! ...


Julia
(7 Feb 2018) This document contains four Julia Set Explorers: one written using TIBasic (running in the Notes app) and the others in Lua. In this first one, grab the black point and move it around. In the second (Lua), clickndrag to move the black point.
This identical Lua version in Problem 2 is much faster!
This Lua version is really
cool (uses z=z^2+cs). Just click somewhere to select cs and make a new image. Tip: points near the edge of the Mandelbrot set make the most interesting Julia sets.
Julia4 has a movie! Just click to start or stop the tour. 

GridPaint
(29 Jan 2018) Another Lua app developed by request. Originally a demo app written by Marc Garneau, GridPaint lets you color in the squares in a grid with the colors along the bottom of the screen. Click a color on the palette then 'paint' the squares. Behind the scenes, the app keeps track of the number of squares with each color and a spreadsheet on the following page reports that data. The purpose of the project is to provide a platform for teaching younger children about fractions, decimals, and percents using the painting process. Various grid sizes are available including 5x5, 10x10, 16x10(shown), and higher resolutions (from the menu) and the app works equally well on all platforms: handheld, computer, and iPad. On a handheld you can clicknhold to lock down the mouse cursor and then paint away by using the touchpad. On the iPad just touch and drag. To erase the painting press [esc] or use the menu (for iPad). 

Sierpinski
in Lua
(13 Dec 2017) Just a little exercise in coding while I was bored! A simple program that generates the Sierpinski Triangle using the 'chaos game' method. Pressing [enter] adds 100 points to the image, pressing [esc] starts over. Take a look at the code to see how to use a class in Lua. 

piano17 (requires
TIInnovator)
(04 Oct 2017) Something a little different. Requires v4.5 or above! This doc contains a program that works with the TIInnovator to produce musical notes using either the computer keyboard or the handheld keypad. The tune is 'recorded' and can be played back. If you know about working with lists you can save your compositions into different lists for posterity, too. The first page is an important title page (a Lua app that determines the device) and then comes a Notes page explaining the keyboards (PC or handheld) and, finally, a Calculator page where you run the program piano17() with no arguments. Illustrates the power of the new getKey() and DispAt commands in TIBasic first available in OS v4.5. For better (louder) sound, try a 'BoomTouch' portable speaker with your TIInnovator. This clever little device picks up the TIInnovator's weak audio and amplifies it without wires or bluetooth! (Uses 'near field audio' amplification). More info at www.boomtouch.com. 

Distance
to the Horizon
(31 Mar 2017) Here's an exploration of the distance from a plane flying at some altitude to the horizon. Inspired by an article found in Hemispheres magazine found on United Airlines flights in March of 2017. The article is included as an image in the file. There are two geomettry constructions that behave differently. In one (shown at the right) you can move plane to change its altitude in feet (along a tangent to the circle representing the earth) and observe the distance to the horizon in nautical miles. In the other you have control of the altitude of the plane using a slider (for greater control) and then observe the distance to the horizon. The interesting thing about the magazine article is the author's use of different units (feet, meters, and nautical miles  thus requiring some conversion formulas in the constructions) and the real heart of the discussion is the application of the Pythagorean Theorem. See if you can recreate the construction.


Polar Shade
(10 Feb 2017) By request, I wrote a document that can 'shade' the interior of a polar curve (using a scatter plot). The slider m controls the density of the shading and the function in r1(theta) is editable. The program contains a lot of trig mathematics: converting from numberofsegments to radians, converting from polar to Cartesian coordinates, and storing into lists to create a 'disconnected' scatter plot. The program runs in a math box on a Notes app to dynamically refresh the 'shading' when the sliders change or when the function is edited. 

Unscramble
(01.01.2017) This document contains a brain experiment. Give it a try and send your comments.


Morph
(09/2016) Inspired by an email from Saltire Software, this document demonstrates how to 'morph' from one function to another using a slider. You can morph in Parametric, Function, or Polar mode. You can even morph between Function and Polar using Parametric! Feel free to edit the functions f1 and f2.


Lights Out!
(08/2016) ...another Lua app. The classic switching game. Click a light to switch it and its four neighbors. The object is to get all the lights off. All games are solvable! Can you do it in 10 moves or less?


15
(07/2016) My latest Lua brain exercise: The 15 puzzle. Works well on computer, handheld and iPad. On the handheld and computer press [tab] to scramble and use the arrow keys to move the tiles. On the iPad tap the 'Scramble' button and then tap the tile you wish to move. Object: get the numbers back in order from topleft to bottomright with the blank in the lower right. 

Simon
(03/2016) A long time coming, I finally got around to developing this Lua app. No instructions; no menu; includes a 'high score' variable so be sure to save the document when done so it remembers the high score. 

String Art
the TINspire way!
(12/2015) Watching a class in Eagle Pass, TX nspired me to create a TINspire document to generate 'string art'. The instructions are on page 1 of the file. The simple 'trick' is to use a connected scatter plot with 'void' elements in the lists to create the separate line segments. With special patterns, the next logical step is to write a program to create the lists and, perhaps, sliders to control the data! For more indepth material on the curves defined by string art see these four activities on the T3 Australia site from the Victoria Year 11 'Specialist Mathematics' course thanks to Peter Fox (pfox@ti.com). 

Mixology
(09/2014) The science of making cocktails! This document investigates mixture problems from a 'mature' point of view. If you have two alcoholic beverages of different proofs, such as wine and scotch, in what proportions should you mix them to get a desired strength cocktail of a desired size? (9/29): Happy coincidence... on a recent flight I found an article in the airline's magazine on just this topic! This document makes liberal use of CAS and interactive graphing to investigate this mixture problem. Something you won't find on TI's activities sites. 

The Frog Puzzle
April 2014 This little Lua project was a group effort (see the file for credits). Requires OSv3.6. The object of the 'game' is to get all the frogs on the left to hop to the right and all the frogs on the right to the left. The frogs can hop to an empty pad or hop over one frog. Click or tap on a frog to make it move. If a frog doesn't move it's because it can't. See the menus for setting options. The object of the 'puzzle' is to determine the number of moves required if the game contains n frogs. What's the pattern? There are two versions in the file. Version 1 plays with the same number of frogs on each side and version 2 allows for a different number of frogs on each side. The file plays well in the computer, handheld and iPad. 

Super Simple
Timer!
November 2013 So simple you can use it with your eyes closed! And that was the intent: to test your mental timing skills by closing your eyes, start the timer, count off a number of seconds and stop the timer. Check your mental count with the timer's result. How close were you? Only one 'action' controls the entire Lua app and there's no menu, either. Press [enter] or mouse click or, on the iPad, just tap the app to start, stop, and reset the timer. Any combination of actions also works well. This file does play well on the iPad, too.


Hog!  A
Lua Application
September 2013 Based on the same input/output interface as Bagels (below), Hog is a 1player game played with simulated dice. On a turn you can toss as many dice as you like. The total of the dice is your 'points' for that turn which is added to your 'score'. The goal is to reach a score of 100 in as few turns as possible. What's the best strategy? The game keeps track of your scores and there's a page displaying a histogram of your scores. It also keeps track of your best score. The menu allows you to clear the best score and the list of scores. This file does not play well in theiPad due to the intensive keyboard input. 
Bagels  A
LUA Application
September 2013 Here's the worldfamous numberguessing game (a la Mastermind). It only took an evening of coding (Lua) to produce this and I am very happy with the result. I've written this program in every language I've ever had the pleasure to have known. But it does not play in the online Document Player and probably doesn't work well on the iPad either, due to the keypad entry. Instructions are on page 1 of the file. There are now three versions of the game in the file... The second one uses a scrolling textbox for the clues rather than the blue graphics that you see on the right. It will be easier to expand this version to allow for more than three digits in the game. Coming (soon?)!! Version III (in the same file) lets you play with 3, 4, or 5 digit numbers! Note the progression of the code in the three apps. 
Polynomial Regression
August, 2013 This document requires CAS. I've long wondered what the regression algorithm behind QuadReg, CubicReg, and QuarticReg is. It took me this long to look it up and I was pleasantly surprised to actually 'understand' it (to a point). The result is this pair of programs and a demonstration of their usage embedded in this document. The program polyreg(xlist, ylist, degree) performs a polynomial regression of the desired degree on the dataset (xlist,ylist). The polynomial expression is then stored in the variable regeq so that it can be used as the definition of a function to graph or analyze. The program makes heavy use of matrices and lists and needs CAS to build the function in terms of x. The source code is exposed in one of the pages of the document. As an added bonus, there's also a program called polyfit(xlist, ylist) which is nearly identical to polyreg( ) but only determines the (n1) degree polynomial for a dataset of n elements. Polyreg( ) does it when p=numpts1. and you can see how the polynomial regression 'grows' to eventually match the polynomial fit function. Both programs are used on the demo page which is illustrated on the right. There's no error handling, but when the algorithm fails to produce a result you'll see 'Singular Matrix' as it's output and the graph is not updated. This happens when the power you seek is too large (p>numpts1). 

"Reaction
Time" game
(05 Apr 2013) This file contains a 'reaction time' game for two players written in Lua. At the heart of the game it displays some random black dots. The player's task is to react when she first sees red dots. The number of red dots displayed before reacting (pressing enter, clicking or tapping on the iPad) represents the 'reaction time'. Each player gets a set of rounds to play. At the end of the game the players compare their onevar data on page 3 containing a spreadsheet with the data, a boxnwhisker plot and a computation of the mean scores of each player. Other analyses are then possible using the two lists created by the game. Menu options in the game include a 'reset' which clears the data and starts the game over and an option for setting the number of rounds per player. I purposely left out the core instruction about the blacktored dot change so that kids can figure it out on their own. This file works well 'anywhere': computer, handheld (CX due to color), iPad, and the online Document Player. Special thanks to Andy Kemp who created a reaction time game and thus Nspired me to take on the project and, not coincidentally, provided a lot of code to the effort and BIG THANKS to Steve Arnold's tutorials. Comments and suggestions welcome, especially for the noncolor handhelds (different shape?).

page 1.1
page 1.2
page 1.3 
Integral between curves
(posted 1/1/2012) This demo uses a stat plot to shade the region between two curves to indicate the computed integral. If f1(x) is greater than f2(x) on (a,b) then you could consider this an indication of the 'area' between the two curves. You can change the functions, the viewing window and drag the points a and b (or edit the coordinates) to define the interval. The driving force is a program running in a Math Box to create the scatterplot for shading purposes (a collection of line segments). Thanks to Marc Garneau for the disconnected scatterplot trick. Version 2 includes color shading: when f1(x)>=f2(x) the shading is green and otherwise is purple. Neither version works well on the handhelds because the scatter plot is regenerated each time a or b changes so it is too slow. See version 3... Version 3 (05/23/2012) uses a Lua app to build the scatter plot. This versions performs a little better (but not great) on the handhelds. This file requires version 3.2. In this version the Lua app monitors a few variables on the graph page and updates the scatterplot when needed. You can even transform (translate or stretch) the functions! Version 4 (03/2013) containing very efficient code by Dennis Donovan that makes it pretty slick even on a handheld! 
version 1
version 2
version 3 
Mandelbrot
A Lua application that lets you explore the Mandelbrot set. Don't try this on the handheld. I'm sure it's too slow. Best used in handheld view in the computer software, but computer view gives better resolution. The Lua source code and other documentation is included in the tns file. This was written before the Script Editor was available. 

Superellipses
and the Squircle
(09/15/2011) I learnt a new word today: Squircle 
not a squircle 
A cone sliced
by a plane
(05/2011) A simple interactive file that uses the new 3D graphing capabilities of TINspire. You have control (sliders) for the angle of the plane (with the xaxis) and the zintercept of the plane. Take a look at the equation of the plane to see how to convert 'angle' into 'slope'. When a slider controls slope, small values lose detail and large values move slowly. When you drive the angle, everything works smoothly.


Greater
control of your polar and parametric graphing
Looking for a way to control the rate at which polar and parametric graphs appear? These two files let you expose the graphs using a slider. The polar slider even goes from a negative value to a positive value. The polar graph is defined as r1(theta) but the graph is produced by a parametric relation. (02/2011)These files do not play well on a handheld because of the effort it takes to produce the graph when you use the slider. I'll be working on another method. 

Sierpinski
with Slider
08/2010  An updated version of the Sierpinski Triangle program found further down this page. This version is interactive. Clicking the uparrow or downarrow on the slider on the Graph page increases and decreases the number of points plotted. Uses a program running on a Notes page.


In version 3.0 this feature is built into the Vernier DataQuest application. By request of the science folks, I have written a 'select'
program for the TINSpire. You graph
a scatter plot of your data then place and move two points on
the screen to choose a range of data to extract. Run the select
program and it will create two lists, temp1 and temp2, which
contain only the desired data. 

Version 3.0 has this feature built in: see Graphs/Graph Type/Differential Equation This file is included with OS v1.6 (Dec, 2008) in the Examples folder. The CAS OS has the "CAS" version, but the files are identical. The document is used to produce slopefields for differential equations and is a little easier to use than the Slopefields document that you will find further down on this page. I have produced a demonstration video that explains the use of this document. Be sure your audio is turned on so you can hear the explanations. 
My TINspire CAS file used at the 'From Our Classroom to Yours' Conference, January 31, 2009 at the William Penn Charter School, Philadelphia, PA. 

Soggies: The Breakfast of Nerds! Here's a treatment of "The Cereal Box Problem". This classic probablility problem is based on the 'prizes in the box' issue: if there are N prizes in the collection, what is the Expected Number of boxes of cereal you need to buy in order to collect all of the prizes? The TINspire CAS document utilizes a program, soggies(a, b, t), that performs a simulated sampling of boxes (the number of prizes in the set ranges from a to b) until all the prizes have been collected and stores the number of prizes and the average number of boxes needed into lists that are used to create a scatter plot of the data. I also include a brief analytic explanation of E(N), the expected value for N prizes and a function that graphs the expected value function over the scatter plot. Despite the appearance of the image on the right, this is not a linear function! I am very happy to have had help from Lee Kucera, Marc Garneau, especially George Reese's web pages, and Jesse "Jay" Wilkins' great article on the derivation of E(N). When I taught CS, I used this problem as a great graphics programming project, but did not know the general function until now (Dec, 2008). A big THANK YOU to the WWW! 

DERPT


This document explores programming in the 'TIBasic' language built into the TINspire. First introduced in 2008, the Program Editor allows you to write programs right in the handheld. The TNS file covers an overview, basic programming concepts, and some stuff beyond the bascis such as lists and graphics. Also, see the Tower of Hanoi program later on this page.


Slopefields and Initial Conditions programs Version 3.0 has slopefields built into the OS. This document contains programs that generate a slopefield for a differential equation (by creating a stat plot) and then allows you to select (graphically/geometrically) an initialcondition point to create another stat plot of a particular solution. The Notes page also explains how to use the desolve( )command on a Calculator page to solve the differential equation and how to make that function's graph go through and be controlled by the initial contition point graphically. Very powerful interactive graphics here! The Slopefield program was originally written by Doug Roberts. The tweaks to slopefield( ), the IC( ) program, and the desolve( ) technique are my work. There are other ways of generating slopefileds. If you are interested in them, email me. Click the image on the right to see the Flash movie. 
Implicit
function grapher
Note that there is also a very efficient method for graphing implicit relations using the zeros( ) function in the CAS unit, but the numeric unit does not have that function. 

AP Calculus demo file
Three sample problems that I demonstrated at the AP Calculus Consultants Conference in Dallas, 11/1618/2007.
 The number of daylight hours on June 21 as a function of latitude
 A limit question from the AP Calculus listserv 10/2007
 AP Calculus 2003AB6c
A graph that I discovered while playing around one day. Generates strange pictures as you move a point around on the graph page. How does it work? Read and learn! 

Mesopotamian Tablet  Isosceles Trapezoid Problem
I found this problem at the NCTM Regional Conference in Richmond, VA. Credit is found in the file. The problem is to find a transversal that divides a particular isosceles trapezoid into two equal areas. There's also an interesting extension that's not discussed in the file. Can you figure out what I'm thinking?
Sierpinski
Demo 

Distance to a Parabola
This zip file contains TWO versions of the activity: a student copy and a teacher copy. The problems investigate the length of a segment drawn from a point to the parabola y=x^{2}. Several problems are included in both files. The investigation of the residuals plot is also addressed and the CAS derivation of the mathematical model is included in the teacher file.
Largest Triangle  Paper Folding This paperfolding problem was originally presented by Arne Engebretsen. This document, originally built by Dr. Stephen Arnold of Kiama, NSW, Australia, contains a very slick geometry construction simulating the folding of the upper left corner of a piece of paper down to the bottom edge. I tweaked the shading a bit, changed the dimensions of the paper, and limited the movement of point H. The problem is to find the fold  determined by the location of point H  that makes the area of the triangle formed in the lower left corner a maximum. Steve has additional TINspire resources at http://compasstech.com.au/TNSINTRO/ 

Here's another problem related to paper folding: if you fold a corner of the paper to the opposite side, determine the shortest fold length. This problem can be tackled analytically in several different ways. How many different ways can you arrive at the soution? Can you see why the height of the paper is not an issue? In the file on the right (page 2), you can drag point Drag to change the length of the fold (L) and the distance from the lower left corner of the paper to the point Drag (w). The document contains pages of notes, this construction, a spreadsheet for data capture, a graph for the scatter plot, and CAS. Note that a regression algorithm is not appropriate for this problem. Finally, can you generalize the result for any width of the paper? 


Alice
in Wonderland 
TINspire
allows for graphing of parametric, Cartesian and polar
graphs on the same axes. What happens when we trace a point
in both Cartesian and polar coordinate
systems? In this graph/constuction,
as you drag point D on the graph of y=sin(3t), the point on
the polar rose, r(ø) = sin(3ø), also moves so that you can
see or explain the relationship between the two coordinate
systems. The coordinates of D and the converted
radiandegree angle measure is on the screen, but not 'r'.
The clever mathematical conversions are hidden, but easily
exposed.
This,
and the entire construction process are explained and
demonstrated in this document. 

Well... if you've never heard of
the Tower of Hanoi then you can look it up
online. This program demonstrates the power of recursive
programming. When you run the program
you will notice a delay in the display of the output of the
program until the program has completed. I guess that's a
feature, not a bug. Posted 22JAN2008.
It takes 2^N1 moves to move a
tower of N disks. I've tried it in the Computer Software with 10
disks resulting in 1023 moves. How many disks does it take to
get a 'Recursion too deep' error? 

TINspire DOES have a sequence graphing mode! See Graph Type in the Graphs application.
While the TINspire does not contain a 'sequence' graphing mode, it does have the ability to generate sequences (yep, even recursive sequences) and series (sequence of partial sums) using the Lists and Spreadsheet app and then you can graph the resulting scatter plots. This document explains the seqn function and how to create a sequence of partial sums. It also includes an interesting problem: the limit of the sum of the reciprocals of the Fibonacci numbers.
A study of the predatorprey mathematical model using the Spreadsheet and Scatter Plot tools. The document allows the user to drag point Init in this picture to change the initial populations of Foxes and Rabbits (but you have to recalculate the spreadsheet manually) and allows you to edit the growth factors on the SS page. The next version of this document will have sliders on the graph page to control those growth factors. See version 2 below... 

Rabbits and Foxes 2 (posted 2FEB08) has all the variables controlled by sliders in the graph screen. It also has a modified function for the Rabbits which incorporates a logistic growth rather than an exponential one. This model is very sensitive to the variables BR, DF, and AA. I've concluded through examing some Java applets online that there are just not enough data points available in the TINspire (2500) to see the end behavior of the system. This version only graphs 500 data points. You can produce more data by copying and pasting the last line of the data set in the spreadsheet (in row 500) down to row 2500. 

This file uses a spreadsheet to calculate the monthly payment on an amortized loan, displays the amortization table (in the spreadsheet) and then displays a graph of the principal payments and the interest payments. Useful to illustrate the TVM principal and the advantage of shorter term loans. 

Lissajous curves and Harmonograms What are they, you ask? Well peek
inside this file and see. The image to the right is a simple
Lissajous curve, the result of a 2axis pendulum under
resistancefree movement. 

"The Zeckendorf Decomposition" Isn't that a cool title? I learned about this while watching a
DVD lecture from "The Great Courses" called "The Joy of
Thinking" on Fibonacci numbers. And, speaking of "The Great Courses"  there's a course called "How the Earth Works" by Prof. Michael E. Wysession of Wash. U, St. Louis, a former student of mine! 

The
"y=3x and point (1,1)" Problem A vertex of a triangle is at the origin and one side is on the xaxis. Another side lies along the line y = 3x. The third side passes through the point (1,1). What is the slope of the third side if the area of the triangle is to be a minimum? There's another restriction, but you'll figure it out. This is a neat optimization problem that lends itself well to Data Capture and a CAS solution. Note that the builtin regressions do not apply to this problem. Lots of great algebraic manipulation going on here. Gene Olmstead offers two other optimization problems: What line makes the minimum perimeter of the triangle and what line makes the shortest third side, the side through (1,1). Gene says that all three of these have geometric proofs. The file does not contain a complete solution. If you need one, email me. 
