I gave a talk to year 8 students on the applicability of programming in maths. The talk introduced to them how computers interpreted and executed programs with an example in BASIC performing simple arithmetic operations and an example in Python calculating the average of a list of numbers.
4. Further Education
MSc IT (Electronic Communications) 1995
PhD (Network Performance Monitoring) 1998
Research on monitoring parts of the Internet
owned by British Telecom on how well they
perform.
6. My First Computer
Casio PB-100F
BASIC programming language
544 bytes of memory
As opposed to 1 gigabytes of a simple netbook
1 gigabytes = 1073741824 bytes
7. Programs and Data
Data are numbers, alphabets, movies,
pictures and sound.
Inside a computer all of them are stored as
numbers.
Programs tell the computer how to treat
those numbers, i.e., as alphabets, numbers,
movies, pictures or sound.
8. Programs
List of instructions that execute on data.
Data that programs process is stored in
variables.
Variables are memory locations which are
given identifiable names.
9. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
a
b
sum
diff
prod
div
Enter a:
Memory
10. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6a
b
sum
diff
prod
div
Enter a: 6
Enter b:
Memory
11. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
a
b
sum
diff
prod
div
Enter a: 6
Enter b: 2
Memory
12. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
a
b
sum
diff
prod
div
Enter a: 6
Enter b: 2
Memory
13. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
a
b
sum
diff
prod
div
Enter a: 6
Enter b: 2
Memory
14. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
diff
prod
div
Enter a: 6
Enter b: 2
Memory
15. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
Enter a: 6
Enter b: 2
Memory
16. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
Enter a: 6
Enter b: 2
sum =
Memory
17. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
Enter a: 6
Enter b: 2
sum = 8
Memory
18. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
Enter b: 2
sum = 8
diff =
Memory
19. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
Enter b: 2
sum = 8
diff = 4
Memory
20. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
sum = 8
diff = 4
prod =
Memory
21. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
sum = 8
diff = 4
prod = 12
Memory
22. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
diff = 4
prod = 12
div =
Memory
23. My First Program
Input "Enter a:", a
Input "Enter b:", b
sum = a + b
diff = a - b
prod = a * b
div = a/b
Print "sum = ";
Print sum
Print "diff = ";
Print diff
Print "prod = ";
Print prod
Print "div = ";
Print div
6
2
8
4
12
a
b
sum
3
diff
prod
div
diff = 4
prod = 12
div = 3
Memory
25. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mean = Sum of all the numbers divided by
the count = 37/12 = 3.083
26. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mean = Sum of all the numbers divided by
the count = 37/12 = 3.083
Median = Average of the numbers in the
middle of the sorted list of values.
27. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mean = Sum of all the numbers divided by
the count = 37/12 = 3.083
Median = Average of the numbers in the
middle of the sorted list of values.
1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 7
28. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mean = Sum of all the numbers divided by
the count = 37/12 = 3.083
Median = Average of the numbers in the
middle of the sorted list of values.
1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 7
Median = 3
29. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mode = The number that occurs the most.
30. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mode = The number that occurs the most.
Number Count
1
2
3
4
7
31. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mode = The number that occurs the most.
Number Count
1 1
2 3
3 5
4 2
7 1
32. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mode = The number that occurs the most.
Number Count
1 1
2 3
3 5
4 2
7 1
33. Mean, Median, Mode
7, 3, 2, 3, 3, 4, 1, 4, 2, 3, 3, 2
Mode = The number that occurs the most.
Mode = 3
Number Count
1 1
2 3
3 5
4 2
7 1
34. A Python Program to Compute
Meandata = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
35. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
done
Memory
data
input
sum
value
mean
36. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
done
Memory
data
input
sum
value
mean
37. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
38. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
Enter a number of 'n' to end:
39. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
Enter a number of 'n' to end: 3
3
40. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
Enter a number of 'n' to end: 3
3
41. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
Enter a number of 'n' to end: 3
3
3
42. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
Enter a number of 'n' to end: 3
3
3
Enter a number of 'n' to end:
43. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
Enter a number of 'n' to end: 3
1
3
Enter a number of 'n' to end: 1
44. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
Enter a number of 'n' to end: 3
1
3
Enter a number of 'n' to end: 1
45. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
1
3 1
Enter a number of 'n' to end: 3
Enter a number of 'n' to end: 1
46. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
1
3 1
Enter a number of 'n' to end:
Enter a number of 'n' to end: 3
Enter a number of 'n' to end: 1
47. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
2
3 1
Enter a number of 'n' to end: 2
Enter a number of 'n' to end: 3
Enter a number of 'n' to end: 1
48. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
2
3 1
Enter a number of 'n' to end: 2
Enter a number of 'n' to end: 3
Enter a number of 'n' to end: 1
49. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
2
3 1 2
Enter a number of 'n' to end: 2
Enter a number of 'n' to end: 3
Enter a number of 'n' to end: 1
50. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
2
3 1 2
Enter a number of 'n' to end:
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
51. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
n
3 1 2
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
52. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Falsedone
Memory
data
input
sum
value
mean
n
3 1 2
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
53. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
54. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
55. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
0.0
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
56. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
0.0
3
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
57. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
3.0
3
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
58. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
3.0
1
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
59. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
4.0
1
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
60. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
4.0
2
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
61. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
6.0
2
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
62. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
6.0
2
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
63. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
6.0
2
2.0
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 1
Enter a number of 'n' to end: 2
64. data = list()
done = False
while (not done):
input = raw_input("Enter a number or 'n' to end:
")
if (input != "n"):
data.append(int(input))
else:
done = True
print(data)
sum = 0.0
for value in data:
sum = sum + value
mean = sum/len(data)
print(mean)
Truedone
Memory
data
input
sum
value
mean
n
3 1 2
6.0
2
2.0
Enter a number of 'n' to end: n
Enter a number of 'n' to end: 2
2.0
65. Key Lessons
Computers are not intelligent or smart,
humans are.
Computer follow instructions listed as
programs to perform tasks.
Computers are much faster than humans in
following instructions.
All operations within a computer are either
arithmetic or logical.
66. The Future
Data and information driven.
Need for speed, the faster you can find,
process and analyse data you need, the
more successful you are.
You will need to use computers efficiently to
get that advantage.
Most jobs in the next 30 years will require
some level of programming.
67. The Future
“Sometime in the future, the trading floor of
the London Stock Exchange will only be
occupied by a computer, a man and a dog.
The dog will guard the computer, the man
will feed the dog and the computer will
conduct the business”, Anonymous