6 points, SCA Band 2, 0.125 EFTSL
Undergraduate - Unit
Refer to the specific census and withdrawal dates for the semester(s) in which this unit is offered.
This unit introduces programming fundamentals and the Python language to students. The unit provides a foundational understanding of program design and implementation of algorithms to solve simple problems. Fundamental programming control structures, built in and complex data types and mechanisms for modularity will be presented in Python.
Topics covered will include basic input and output, program control structures, basic data structures and modular program structure. Problem-solving strategies and techniques for algorithm development, iteration and recursion, algorithm efficiency and the limitations of algorithms will be introduced.
At the completion of this unit students should be able to:
- recognise the relationship between a problem description and program design;
- implement problem solving strategies;
- demonstrate how basic data structures (list, graphs, trees, sets, tables) function;
- investigate different strategies for algorithm development and evaluate these to select an appropriate solution to a given problem;
- decompose problems into simpler problems;
- determine the complexity of simple algorithms;
- demonstrate the correctness of algorithms;
- design test strategies for algorithms;
- recognise the limitations of algorithms.
Examination (2 hours): 40%; In-semester assessment: 60%
Minimum total expected workload equals 12 hours per week comprising:
- Contact hours for on-campus students:
Two hours lectures
Two hours laboratories
Two hours tutorials
- Additional requirements (all students):
A minimum of 2-3 hours of personal study per one hour of lecture time in order to satisfy the reading, tute, prac and assignment expectations.
See also Unit timetable information