[Edu-sig] Brainstorming a Math-with-Programming Class

Kirby Urner urnerk at qwest.net
Wed Jan 28 14:35:08 EST 2004


Brainstorming the kind of course I'd like to see offered, including to high
schoolers.  Just a rough outline.  Several more like this, partially
overlapping, would give a pretty good background in many math concepts AND
computer science.

===================================

Algebra with Programming
(Rough Draft)

Target:  			High School or College Course incl Adult Ed
Time frame: 		Various options
Computer Language:  	Python (including Pygame)


Course Outline:

Programming Unit:  Orientation

Data Structures
	Sets, Lists, Associative Lists

Programming Unit:  Data Structures

Notational Apparatus:
	Lists, Arrays, Indexing

Programming Unit:  Type Systems 

Number Sets:  N, Z, Q, R, C

Programming Unit:  Floating Point, Big Integers and more

Programming Unit:  Extending the Type System
	Building a Rational Number Class (Q)

Operations:     
	Unary vs Binary
	Commutativity vs Associativity (intro)

Programming Unit:  Extending Rational Number Class with Operator Overloading

Functions and Relations
	Mapping chars to ASCII/Unicode
	Sequences (rule based)
		types of sequences
			convergent
			divergent
			oscillatory
			chaotic

Programming Unit:  Sequences of Figurate Numbers

Programming Unit:  Fibonacci Numbers and Recursion

Programming Unit:  Sequences and Pseudo-Random Numbers

Programming Unit:  Chaotic Sequences

Inverse Functions and Operations
	Unary Inverse Ops:  negation, reciprocation
	Powers and Roots
	Exponentiation and Logs
	
Programming Unit:  Extending the Rational Number Object

Dictionaries and Permutations
	Substitution Ciphers
	Composition as an Operation
	Commutativity vs Associativity (continued)
	Properties of a Group (intro)

Permutations and Combinations
	Factorial
	Pascal's Triangle
		Triangular and Tetrahedral numbers
	Binomial Distribution
	Binomial Theorem (intro)

More Functions and Inverse Functions
	Trig functions (intro)
	Multiplying Complex Numbers
	Arithmetic Operations Modulo N

Programming Unit:  Exploring Complex Numbers with Trig Functions

Programming Unit:  Building a Modulo Arithemetic Class

Group, Ring, Field
	Groups of Totatives Modulo N
	Fields of Totatives Modulo Prime

Programming Unit:  Extending a Modulo Arithemetic Class

Graphing Functions and Relations

Programming Unit:  Points, Edges and Plotting

Programming Unit:  An Intro to PyGame for Plotting

Parametric Equations and Curves

Programming Unit:  A Polynomial Class

Factoring and Solving Equations
	Quadratic Equations
		Completing the Square
		Quadratic Equation
	Higher Degree Equations
	Binomial Theorem (continued)
	Ring of Polynomials

Programming Unit:  Extending the Polynomial Class





More information about the Edu-sig mailing list