際際滷

際際滷Share a Scribd company logo
Teaching Computer Based Math
and Computer Science Using
Python
Andrei CORLAT,
Doctor 樽n matematic, ef Catedra
Matematic i Informatic, UnAM
Oxana GRAJDIANU,
UnAM
Teaching Mathematics
Teaching Computer Science
Young people consider themselves "digital natives"
because they can text and chat and play games, but using
technologies doesnt really make one a digital native or
fluent in technology.
Mitch Resnick at TEDxBeaconStreet
Computer Based
Mathematics
Benefits of Programming for
learning Mathematics
Learning to code means learning how to think creatively,
reason systematically and work collaboratively. And these
skills are applicable to any profession  as well as to
expressing yourself in
your personal life, too."
Mitch Resnick
Python as the first
programming language
 Simple
 Easy to Learn
 Free and Open Source
 High-level Language
 Portable
 Interpreted
 Object Oriented
 Extensible
 Embeddable
Peculiarities of Python
Programming Language
Position
Mar 2014
Position
Mar 2013
Delta in
position
Programming language Share in
Marc 2014
Twelve
month
trends
1 1 Java 26.9 % -0.5 %
2 2 PHP 13.5 % -1.5 %
3 4 Python 10.6 % +0.6 %
4 3 C# 10.5 % -0.1 %
5 5 C++ 8.8 % -0.5 %
6 6 C 8.1 % +0.2 %
7 7 Javascript 8.0 % +0 %
8 8 Objective-C 6.4 % +1.6 %
9 9 Visual Basic 3.1 % +0.3 %
10 10 Ruby 2.5 % +0 %
息 2014 Pierre Carbonnelle
Comparing Python to other
programming languages
The "Hello, world" program in Python is about as simple as it can get:
>>> print "Hello, world!"
Hello, world!
In Java, much more overhead is needed:
class HelloWorld {
public static void main(String[] args)
{
System.out.println("Hello, world!");
}
}
Comparing Python to other
programming languages
The "Hello, world" program in Python is about as simple as it can get:
>>> print "Hello, world!"
Hello, world!
In Pascal Programming Language:
program HelloWorld;
begin
writeln('Hello World');
end.
Python in Schools
Python and Math is an approach to apply programming skills to solving
math problems. Here are the main objectives:
 Introduce programmers to solving math problems
using programming.
 Practice problem-solving skills
using programming.
 Introduce new skills and techniques
that increase the efficiency of programs.
Unlock the Power of
Computer with Python
There are two main advantages that programming a
computer has over doing the calculation yourself:
 Speed: computers can do more calculations in a
second than most will do in their lifetime.
 Repetition: computers do the same thing over and
over and never complain.
Gauss and Loops
>>> total = 0 #A variable storing our running total.
>>> for x in range(1,101): #Range(1,101) stops at 100.
total = total + x #Code inside a loop is indented.
>>> print(total)
5050
Randomness and Case
Statements
>>> import random
>>> flipResult = 0
>>> heads = 0
>>> tails = 0
>>> for flips in range(1,101):
flipResult = random.randint(1,2)
if (flipResult == 1):
print ("Heads") #Students like seeing the flip results.
heads = heads + 1
if(flipResult == 2):
print ("Tails")
tails = tails + 1
>>> print ("heads= %i" % heads)
>>> print ("tails= %i" % tails)
>>> print(heads/tails)
Randomness and Case
Statements - Output
Tails
Tails
Heads
Tails
Tails
Tails
Heads
Tails
Heads
Tails
Tails
Tails
Tails
Tails
Heads
Heads
Tails
Tails
Heads
Tails
Tails
Heads
Heads
Heads
Tails
Tails
Tails
Tails
Heads
Tails
Heads
Heads
Tails
Tails
Heads
Heads
Tails
Heads
Tails
Tails
Heads
Heads
Tails
Tails
Heads
Heads
Heads
Tails
Tails
Tails
Heads
Tails
Heads
Tails
Heads
Heads
Tails
Heads
Tails
Tails
Tails
Heads
Heads
Tails
Heads
Tails
heads = 45
tails = 55
0.8181818181818182

More Related Content

Teaching Computer Based Math and Computer Science Using Python

  • 1. Teaching Computer Based Math and Computer Science Using Python Andrei CORLAT, Doctor 樽n matematic, ef Catedra Matematic i Informatic, UnAM Oxana GRAJDIANU, UnAM
  • 3. Teaching Computer Science Young people consider themselves "digital natives" because they can text and chat and play games, but using technologies doesnt really make one a digital native or fluent in technology. Mitch Resnick at TEDxBeaconStreet
  • 5. Benefits of Programming for learning Mathematics Learning to code means learning how to think creatively, reason systematically and work collaboratively. And these skills are applicable to any profession as well as to expressing yourself in your personal life, too." Mitch Resnick
  • 6. Python as the first programming language Simple Easy to Learn Free and Open Source High-level Language Portable Interpreted Object Oriented Extensible Embeddable
  • 7. Peculiarities of Python Programming Language Position Mar 2014 Position Mar 2013 Delta in position Programming language Share in Marc 2014 Twelve month trends 1 1 Java 26.9 % -0.5 % 2 2 PHP 13.5 % -1.5 % 3 4 Python 10.6 % +0.6 % 4 3 C# 10.5 % -0.1 % 5 5 C++ 8.8 % -0.5 % 6 6 C 8.1 % +0.2 % 7 7 Javascript 8.0 % +0 % 8 8 Objective-C 6.4 % +1.6 % 9 9 Visual Basic 3.1 % +0.3 % 10 10 Ruby 2.5 % +0 % 息 2014 Pierre Carbonnelle
  • 8. Comparing Python to other programming languages The "Hello, world" program in Python is about as simple as it can get: >>> print "Hello, world!" Hello, world! In Java, much more overhead is needed: class HelloWorld { public static void main(String[] args) { System.out.println("Hello, world!"); } }
  • 9. Comparing Python to other programming languages The "Hello, world" program in Python is about as simple as it can get: >>> print "Hello, world!" Hello, world! In Pascal Programming Language: program HelloWorld; begin writeln('Hello World'); end.
  • 10. Python in Schools Python and Math is an approach to apply programming skills to solving math problems. Here are the main objectives: Introduce programmers to solving math problems using programming. Practice problem-solving skills using programming. Introduce new skills and techniques that increase the efficiency of programs.
  • 11. Unlock the Power of Computer with Python There are two main advantages that programming a computer has over doing the calculation yourself: Speed: computers can do more calculations in a second than most will do in their lifetime. Repetition: computers do the same thing over and over and never complain.
  • 12. Gauss and Loops >>> total = 0 #A variable storing our running total. >>> for x in range(1,101): #Range(1,101) stops at 100. total = total + x #Code inside a loop is indented. >>> print(total) 5050
  • 13. Randomness and Case Statements >>> import random >>> flipResult = 0 >>> heads = 0 >>> tails = 0 >>> for flips in range(1,101): flipResult = random.randint(1,2) if (flipResult == 1): print ("Heads") #Students like seeing the flip results. heads = heads + 1 if(flipResult == 2): print ("Tails") tails = tails + 1 >>> print ("heads= %i" % heads) >>> print ("tails= %i" % tails) >>> print(heads/tails)
  • 14. Randomness and Case Statements - Output Tails Tails Heads Tails Tails Tails Heads Tails Heads Tails Tails Tails Tails Tails Heads Heads Tails Tails Heads Tails Tails Heads Heads Heads Tails Tails Tails Tails Heads Tails Heads Heads Tails Tails Heads Heads Tails Heads Tails Tails Heads Heads Tails Tails Heads Heads Heads Tails Tails Tails Heads Tails Heads Tails Heads Heads Tails Heads Tails Tails Tails Heads Heads Tails Heads Tails heads = 45 tails = 55 0.8181818181818182