[Edu-sig] thought re graphing calculators ...

Gregor Lingl gregor.lingl at aon.at
Mon Sep 28 22:30:45 CEST 2009

Brian Blais schrieb:
> On Sep 27, 2009, at 19:38 , Charles Cossé wrote:
>> Hi, this has probably been discussed to death already, but maybe not: 
>> The point at which fancy graphing calculators become "necessary" (ie 
>> as in one's student career) is the point at which the calculator 
>> should be abandoned and Python employed.  Just a thought ... delete 
>> at will !
> Just a month ago, a friend of mine who homeschools her children was 
> asking me about graphing calculators.  Apparently the math curriculum 
> she uses has a number of graphic calculator exercises.  My advice was 
> to buy a nice solar-powered scientific calculator (for $15 at Target), 
> but to ignore the graphing calculator entirely.  Her kids should do 
> the exercises by hand, on graph paper instead.  Anything that is hard 
> enough for you to use a graphic calculator can be done much more 
> easily with a computer.  
> After giving her this advice (which I still stand by), I was thinking 
> about my own experience.  I was going through high school when the 
> first graphic calculators came out, and I had one Junior and Senior 
> year and through college.  I loved to program it, and I loved the big 
> screen where I could see and edit expressions.  However, as I think 
> about it, I can not think of a single problem where I *needed* the 
> graphic calculator, or where it gave me more insight than I could do 
> by hand. 
Hi Brian,

I think I have a counterexample.
Run the script, that you can find here:


(or below.) Runs with Python 2.6 or later.
It certainly could be mimicked on
a (programmable) graphics calculator.

What do you think?


# File: tdemo_chaos.py
# Author: Gregor Lingl
# Date: 2009-06-24

# A demonstration of chaos

from turtle import *

N = 80

def f(x):
    return 3.9*x*(1-x)

def g(x):
    return 3.9*(x-x**2)

def h(x):
    return 3.9*x-3.9*x*x

def jumpto(x, y):
    penup(); goto(x,y)

def line(x1, y1, x2, y2):
    jumpto(x1, y1)
    goto(x2, y2)

def coosys():
    line(-1, 0, N+1, 0)
    line(0, -0.1, 0, 1.1)

def plot(fun, start, colour):
    x = start
    jumpto(0, x)
    for i in range(N):

def main():
    setworldcoordinates(-1.0,-0.1, N+1, 1.1)
    plot(f, 0.35, "blue")
    plot(g, 0.35, "green")
    plot(h, 0.35, "red")
    # Now zoom in:
    for s in range(100):
        setworldcoordinates(0.5*s,-0.1, N+1, 1.1)
    return "Done!"

if __name__ == "__main__":

> It was a fun toy, but not the best tool.
> bb
> -- 
> Brian Blais
> bblais at bryant.edu <mailto:bblais at bryant.edu>
> http://web.bryant.edu/~bblais <http://web.bryant.edu/%7Ebblais>
> ------------------------------------------------------------------------
> _______________________________________________
> Edu-sig mailing list
> Edu-sig at python.org
> http://mail.python.org/mailman/listinfo/edu-sig

More information about the Edu-sig mailing list