Wednesday, November 5, 2014

TV around a corner

What is the largest TV that could fit around a corner in your house?

This was the question we answered in my calculus class.

First I showed this applet and had students play with it




Next I asked what do we need to know?

Students asked for the width of the hallways which are 0.8 m and 0.9 m wide.

Next we realized that actually to determine the largest TV we actually need to MINIMIZE the length of the line.  As the smallest line will be the line that can fit around the entire corner.

Calling the, angle between the TV and the 0.8 m wall, theta you get the equation of the TV length at any angle to be



Next taking the derivative, and solving for when it equals 0, gives us


Substituting this back into the equation gives us a TV (or any rigid object) with a length of 2.4 m or 94.45 in across.  

We then did have a discussion around what assumptions are we making?  Some are...
  • The TV has no depth at all
  • The TV will scrap across the wall
  • The TV is out of the box


Wednesday, October 22, 2014

Bowling and Math

Recently, I joined a weekly bingo league and realized that simple addition and daily physical activity could be integrated together.  First, give each student a bingo sheet which has all the numbers 0-99 (inclusive) on it.  In Red Deer, Heritage Lanes has these already made up.  An example of one box might look like



Essentially, you have a total of 4 boxes, each with 25 squares and therefore all numbers will appear once.

How to play:

Take the last two digits of your TOTAL score on each frame of bowling and cross off the respective number on your bingo sheet.  First to a line, X, blackout, etc..wins!  Students would play at least 3 games with the same sheet for all games.

Where is the math?

Students, most likely, would play the first game not caring what score they receive and simply crossing off the scores.  Starting the second game, students will probably start becoming strategic towards the scores they want.  This is where the math will come out, and you will want to do some teaching on how bowling scores work.

Crucial knowledge includes:

  • Pins are worth 2,3,5,3,2 from left to right
  • Strikes are worth 15 points plus the score of the next two balls thrown. (Frame ends)
  • Spares are worth 15 points plus the score of the next ball thrown. (Frame ends)
  • The 10th (final) frame, you throw 3 balls no matter what you knock down on each ball.

Here is what recently happened on my team:
One of the bowlers needed a score of 68 to complete a line and was currently at a score of 17.  He threw a strike and therefore the machine doesn't update your score until his next 2 balls are scored and I saw him doing some math on the back of his bingo sheet.

He realized that essentially he has 32, and the next two balls are worth double points, as they count towards the next frame as well as the previous strike.  Quickly, him and I talked about how he needed 36 points.

There are many options to get this, but one essential question he asked is "Can I get another strike, or will this put me over?"  The answer to this will determine how he throws the first ball in the next frame.

If he throws another strike then, the first strike is now worth 30 points plus the next ball thrown, and the second strike will be worth 15 points plus the next 2 balls thrown, and therefore he essentially would have a score of 62 and the next ball would be worth triple points.  Which means if he throws another strike, then a 2 pin and gutters the 2 balls after this (to complete the third frame) he would be at 68.

What I realized is that the 3 adults on my team (all over age 25) had to think about this problem and it wasn't easily solved.  I wonder if this could help students learn simple addition and multiplication in a context and for a purpose.

If you teach younger grades and want to embed movement into your math classes, I suggest a field trip to a local bowling place. If you are in Red Deer, then I advise you to go to Heritage Lanes, as these sheets are already made.

Friday, September 26, 2014

Coding and the equation of a circle

A student was creating a tower defence game in my computer class, doing so he learned what the equation of a circle is.  This idea is a Gr. 12 math idea, and he did this in Grade 10.  Here is what happened...

He was coding a certain tower in his game and he asked me "How do I code the tower to only attack units which are within 200 pixels?"  I first asked if he could draw me a picture of what he wanted, and below is computer graphic of what he drew..




I then said, "What do you have?" He then showed me that he created variables:

t_x = x value of the turret
t_y= y value of the turret
u_x= x value of the unit
u_y= y value of the unit
He had currently coded that if the following two inequalities were true the tower would attack.
At a quick glance we realize that this creates a square around the turret not a circle.  This he had already realized.  He then said, "How do I test if the straight line distance is less than 200?".  We then drew a picture as follows:


 He then said "Well I know that once the line from the turret to the unit is less than or equal to 200, the turret will attack but what inequality do I create?"  A student, next to him, said "Would pythagorean theorem work?".  The problem we had was to label the other two sides.  Minutes passed while I let him think, and finally he asked if this would work
 I said.. "lets try it".. sadly the turret would attack the unit if the unit was within 200 units of the origin not the turret.  Once again, I refused to simply give him the answer and I asked him, "what could we do to change from the origin to the turret?"  He replied with "Well the turret isn't always the origin, so we would have to test the distance.. and so can we do.."
I then asked, "Why did you use the absolute value before?" Which is responded "because the code needs to take the positive value, and if the unit was to the left or below the turret I need it to become positive....but....wait....squaring is positive, so can I just remove the absolute value?"  We tried and here was his final test

When tested, this worked perfectly.  Keep in mind this child is in Grade 10, and completed an outcome from Gr. 12 mathematics.



Discovering a Variable

I wanted to see if I could get students to "create" or "discover" the idea of a variable.  To try this, I completed the following in my ESL (English as a Second Language) math class.


We first started with a discussion around language, and how math is the "Universal Language".  Next, we talked about "What is the best way to learn a language?"  The students agreed that we should learn how to translate from our language into math would be a great start.  I then told them how I once ordered 2 pepperoni pizzas and 3 Hawaiian pizzas and it cost $70.00, and I asked the class if there is a way we could translate this into math?  One student came up and wrote,
2 Pepperoni + 3 Hawaiian = $70.00 
We then had a discussion how, currently, we would not be able to deduce how much each pizza cost, however this would count as a translation.  I then asked how would you translate "4 Pineapple Pizzas, 3 bottles of Coca-Cola, and 1 Meat lovers, costing $92.00"? Another student came to the board and wrote
4 Pineapple + 3 Coca Cola + 1 Meat Lovers = 92
The class again agreed this was sufficient.  At this time, a student in the back was getting irritated at how easy and time consuming this one.  I asked him to go to the front and in front of everyone translate "3 super size fries, 2 Extra large Coca-cola, and 1 double, extra bacon, cheeseburger costs $21".  He let out a big "UGH!", and asked me to repeat.  As I repeated he wrote...

3 F + 2 C + 1 CB = 21

He looked at me with a smile, and some of his classmates started to laugh.  I then told him "I said supersize fries, not Fs", which he responded with "Yeah this F is supersize fries".  We then had a dialogue around what CB could mean.  After some time, a student asked "Could that be Cheese times burgers?",  and almost immediately a student yelled "but C is coca-cola, so coca-cola times burger?". The student, at the board then changed his answer to   

3 F + 2 C + 1 B = 21

I then wrote on the board

3D +2C = 13

and asked "What does that mean?".  The answers ranged from "3 Dogs and 2 cats cost 13" to "3 bags of dill pickles and 2 bags of cheetos is $13".  We then decided, as a class, that it is important to create a legend at the top.  Therefore we went back and wrote legends such as "F is Super size fries, C is extra large Coca-Cola..."

This was my attempt at students creating their own knowledge of variables.

Tuesday, June 10, 2014

Teaching math through Coding

I recently started teaching Computer Science 10 and 20 and I use the program Processing.  It is a free program and entirely based in a geometric space.  The cross curricular links in this program are amazing!  I want to share how my Grade 10 students were introduced to higher level math concepts while working with this program.

First, here is a program Sean wrote:
int[] numb = new int[5];
void setup() {
  size(800, 800);   background(255);   numb[0]=0;  numb[1]=200;  numb[2]=400;   numb[3]=600;  numb[4]=800;
}
void draw() {
  line(numb[int( random(0, 5))], numb[int( random(0, 5))], numb[int( random(0, 5))], numb[int( random(0, 5))]);
}
The picture it creates is:


Now in case you don't understand processing what is drawing does is takes the numbers 0, 200, 400, 600, and 800 and creates a line from all possible co-ordinates created from these numbers to all other possible co-oridinates.  For example a line from (200, 600) to (800, 800).  It does it in a random pattern, but after running for some time all possible lines are drawn. 

After Sean drew this I asked him "How many lines have been drawn?"  This is a typical Math 30-1 question, a course in which Sean has never been in yet.

After some thought he asked if it would be "5 times 5 times 5 times 5 times 5?"  or 3125.  This is of course, a great way to start the problem but is too high as you can't have a line from (0,0) to (0,0).  Also he didn't account that the line from (0, 400) to (600, 800) is the same as the line from (600, 800) to (0, 400).  At this point the bell rang and we will finish the conversation tomorrow.  However in Grade 10 Computer Science he was introduced to a Gr 12 Math concept called "Fundamental Counting Principle" and "Permutations and Combinations".

Next was Ex who wanted to create a scene where a sun rises and sets. His original project had the sun follow a straight line to the top of the screen and then follow a straight line back down to the horizon.  Following a "^" shape in the sky.  This of course is not how the sun moves, as it would move more in a parabolic shape. 

Unfortunatly, Ex has only taken Math 10 and not have heard of a "Parabola".  Consequently, I sat with him and we played with his code.   Instead of it following "y=-x+10" I asked him to put in "x^2" and to watch what will happen.  Instantly he was surprised to see his sun move in a different fashion than before.

He asked how do we move the sun right in the sky, as he wanted the sun to be at the highest point in the middle of the screen.  What he was asking was "How do we horizontally move the parabola?".  Again this is Math 30 concept.  Through some guided discovery, Ex realized that by replacing x with x-h we move the parabola left and right.  

 Here is his final code.
int xPos=0; float xPos2=260; int positionX =50; int positionY = 100; int Switch = 0;
void setup() {
  size(500, 500);  smooth();
}
void draw() {
  background(130, 200, 255);  fill(255, 238, 21);  ellipse(xPos, xPos2, 100, 100);  xPos=xPos+1;
  xPos2=0.005*(xPos-260)*(xPos-260);
  if(xPos<=0){
    background (0);
     }
     
  noStroke();  fill(15, 80, 0);  rect(0, 300, 500, 400);  fill(40, 40, 40);  rect(200, 230, 100, 70);
  fill(65, 65, 65);  rect(235, 250, 30, 50);  triangle(300, 190, 300, 230, 202, 230);  ellipse(240, 280, 5, 5);
  fill(53, 43, 32);  rect(140, 230, 20, 70);  fill(6, 62, 0);  ellipse(150, 220, 60, 60);  fill(112, 112, 112);
  rect(0, 355, 500, 100);  fill(191, 191, 9);  rect(0, 400, 50, 10);  rect(75, 400, 50, 10);  rect(150, 400, 50, 10);
  rect(225, 400, 50, 10);  rect(300, 400, 50, 10);  rect(375, 400, 50, 10);  rect(450, 400, 50, 10);
  }