This course is an introduction to programming computers. It is the main introductory course in the Computer Science department and is taken by students from a variety of disciplines wishing to have an understanding of computer programming as well as students wanting to continue on to further studies in Computer Science.
We teach programming using the cross-platform language Python. The main focus is on learning to understand the detailed requirements of a programming task, and writing programs that are well structured, correct, easy to read, and to maintain. In order to do this students need to develop an understanding of how to represent information both as data and algorithms. Students also need to develop the skills of incrementally developing and testing programs.
The course covers simple variables, expressions, input and output, control structures, functions, using standard data structures such as lists and dictionaries, and using standard Python modules.
By the end of the course students who succeed should be able to design and implement a medium-size computer program as well as have some idea of the process of program execution.
Assignments are designed to give you practical experience with the concepts which you have learnt in lectures. Assignments are worth a total of 11% of your final mark. There are five assignments and each is due at 4:30pm on their due date.
For three of these five assignments (a total of 7%) you are required to write and submit one or more programs and for the other two assignments you will be using CodeRunner.
- Assignment 1: Due: 17th January (2.5%)
- Assignment 2: Due: 23rd January (2.5%)
- Assignment 3: Due: 1st February (2%)
- Assignment 4: Due: 7th February (2%)
- Assignment 5: Due: 11th February (2%)
Assignments must be submitted by the 4:30pm deadline on the due date.
For assignments 1, 2 and 5 you are required to write and submit one or more programs and these three assignments need to be submitted electronically through the Web Dropbox (see below). Assignments 2 and 3 use the CodeRunner tool (see below).