Python Programming: An Introduction to Computer Science

advertisement
16. CONCLUSIONS
Rocky K. C. Chang
25 November 2015
Objectives of this course
• Build a foundation of solving problems using computers
for students with no computing background.
• User – a computer language – computer hardware
• For those who do not have prior knowledge, Python is a reference
point.
• Employ different approaches (e.g., recursion, dynamic
programming, binary, greedy) to solve a problem.
• Create the fun and passion of creating codes to solve real
problems.
Structure and content of the course
• Section 1 (before test 1)
• What is Computing / Computer Science? What is computation?
• Computing with numbers, strings, lists, files, and graphical objects.
• Solving three problems: integer-calling, rock-moving and coin
removing
• Section 2 (after test 1 and before test 2)
• Functions, iterations, control structures, objects
• Recursions (factorial, cake-cutting, Fibonacci numbers, GCD,
basketball scores, p approximation, Tower of Hanoi), XY
• Section 3 (after test 2)
• Exception handling, modules, dictionary and set,
• Problem-solving methods, more recursions
Teaching approach
• Practice, self-discovery, self-learning
• You will have completed
• 125 exercises
• 10 assignments (? hours, 20 questions)
• Three tests (3.5 hours, 26 MCs, 9 questions)
• Class project (? hours)
• Exam (3 hours, 9 questions)
Final notes about Python
• Many concepts underlying Python are applicable to C.
• Computing with numbers and strings, iterations, control structures,
arrays (list), functions
• In C programming language, you will attend to low-level
details, such as memory management.
• As an OO language, it also shares many features with
C++ and Java.
• There are also important differences, such as private attributes.
• For Python, you could continue to deepen your skill and
knowledge by looking into the OO aspects and various
Python communities.
Problem solving
Problems
Recursion
Dynamic Iterative impl. Binary
program. recursion
Greedy
XY


?

Backward
Coin changing


?
?
no
Fibonacci
numbers



?
-
GCD

?

?
-
Basketball
points



?
-
Tower of Hanoi


For the tail
only
?
-
END
Download