Lecturers are
Mary Cryan and
Julian Bradfield.
The official Course Organiser is
Ewan Klein.
The Class Rep is Simrin Wahal (s1040857).
CP/CPMT is taught in semester 1. It is taught as a combination of Lectures (2 every week), Compulsory Labs (2 hours/week from week 2 onwards), and Tutorials (1 hour/week from week 3 onwards). The first meeting is a lecture at 2pm on Monday, 19th September, meeting in Appleton Tower 2.14.
Lectures for Autumn 2011 take place in semester 1 as follows:
You will be assigned to one of the following labs for weeks 2-11 of semester 1:
The allocation of students to labs appears here.
The assignment of students to tutorial groups is available
here
on the ITO database.
The time/place for Tutorial 1 did not
transfer from the database when the web page was generated: Tutorial
1 place in 3.05 AT on Wednesdays at 11.10.
Note: If you are doing the practicals on a home machine, you will probably need a 32-bit version of descartes.o. Download descartes-32bit.o and rename it to descartes.o.
| Meeting | Day | Date | Who | Where | Title | Slides & Handouts | Code |
| Week 1 | |||||||
| 1. | Monday | 19 Sept | Mary/Julian | AT2.14 | Introduction to CP1 | sl1, sl1x4 | |
| 2. | Tuesday | 20 Sept | Mary | AT2.12 | Imperative programming and C | sl2, sl2x4 | |
| Week 2 | |||||||
| Lab | Mon 26 or Thurs 29 | Julian+/Mary+ | AT4.12 | Intro to the DICE Environment | lab1.pdf, unix.pdf, emacs.pdf | ||
| 3. | Monday | 26 Sept | Mary | AT2.14 | Variables and ints | sl3, sl3x4 | |
| 4. | Tuesday | 27 Sept | Mary | AT2.12 | Arithmetic operations, int, float, double | sl4, sl4x4 | quadratic.c |
| Week 3 | |||||||
| Tutorial | Wed 5 or Thurs 6 | Tutor | week 3 sheet | tutwk3.pdf | |||
| Lab | Mon 3 or Thurs 6 | Julian+/Mary+ | AT4.12 | Simple arithmetic problems | lab2.pdf | ||
| 5. | Monday | 3 Oct | Julian | AT2.14 | arithmetic, if-statement (cont.) | sl5, sl5x4 | |
| 6. | Tuesday | 4 Oct | Julian | AT2.12 | iteration: for and while | sl6, sl6x4 | lect6code.tar |
| Week 4 | |||||||
| Tutorial | Wed 12 or Thurs 13 | Tutor | week 4 sheet | tutwk4.pdf | |||
| Lab | Mon 10 or Thurs 13 | Julian+/Mary+ | AT4.12 | Programming with iteration | lab3.pdf | ||
| 7. | Monday | 10 Oct | Mary | AT2.14 | Functions | sl7, sl7x4 | |
| 8. | Tuesday | 11 Oct | Mary | AT2.12 | Functions 2 | sl8, sl8x4, pics: 1, 2, 3, 4 | |
| Week 5 | |||||||
| Tutorial | Wed 19 or Thurs 20 | Tutor | week 5 sheet | tutwk5.pdf | |||
| Lab | Mon 17 or Thurs 20 | Julian+/Mary+ | AT4.12 | Simple Graphics with descartes | lab4.pdf, lab4sl.pdf | lab4.tar | |
| 9. | Monday | 17 Oct | Julian | AT2.14 | Practical Programming | sl9, sl9x4 | |
| 10. | Tuesday | 18 Oct | Julian | AT2.12 | scanf in detail; char type | sl10, sl10x4 | |
| Week 6 | |||||||
| Tutorial | Wed 26 or Thurs 27 | Tutor | week 6 sheet | tutwk6.pdf | |||
| Lab | Mon 24 or Thurs 27 | Julian+/Mary+ | AT4.12 | Functions and some pointers | lab5.pdf | ||
| 11. | Monday | 24 Oct | Mary | AT2.14 | Arrays | sl11, sl11x4 | |
| 12. | Tuesday | 25 Oct | Mary | AT2.12 | Strings | sl12, sl12x4 | |
| Week 7 | |||||||
| Tutorial | Wed 2 or Thurs 3 | Tutor | week 7 sheet | tutwk7.pdf | bubblesort.c, tutw7a.c | ||
| Lab | Mon 31 or Thurs 3 | Julian+/Mary+ | AT4.12 | Programming with arrays | lab6.pdf | ||
| 13. | Monday | 31 Oct | Julian | AT2.14 | Strings, cont. (sl12); Structured Data | sl13, sl13x4 | |
| 14. | Tuesday | 1 Nov | Julian | AT2.12 | Structured Data, cont.; enums; switch (sl13) | ||
| Week 8 | |||||||
| Tutorial | Wed 9 or Thurs 10 | Tutor | week 8 sheet | tutwk8.pdf | |||
| Lab | Mon 7 or Thurs 10 | Julian+/Mary+ | AT4.12 | Strings and structured types | lab7.pdf | ||
| 15. | Monday | 7 Nov | Mary | AT2.14 | Searching and sorting | sl14, sl14x4 | |
| 16. | Tuesday | 8 Nov | Mary | AT2.12 | Recursion (including mergesort) | sl15, sl15x4 | mergerec.c |
| Week 9 | |||||||
| Tutorial | Wed 16 or Thurs 17 | Tutor | week 9 sheet | tutwk9.pdf | bubblesort.c, mergerec.c | ||
| Lab | Mon 14 or Thurs 17 | Julian+/Mary+ | AT4.12 | mock exam | |||
| 17. | Monday | 14 Nov | Julian | AT2.14 | Libraries and Separate Compilation | sl16, sl16x4 | |
| 18. | Tuesday | 15 Nov | Julian | AT2.12 | Files in C | sl17, sl17x4 | |
| Week 10 | |||||||
| Lab | Mon 21 or Thurs 24 | Julian+/Mary+ | AT4.12 | Recursion and some File work | lab8.pdf | ||
| Tutorial | Wed 23 or Thurs 24 | Tutor | Mock exam Qs; Files and Arguments | tutwk10.pdf | |||
| 19. | Monday | 21 Nov | Julian | AT2.14 | Program Arguments; Mock exam feedback | sl18, sl18x4 | arg.c |
| 20. | Tuesday | 22 Nov | Mary | AT2.12 | Some past exam Questions. | ||
Your grade for CP will depend on two components. The first part will be a single electronically-submitted piece of coursework which will be worth 10% of your overall grade. The second is the final exam, carried out as a computer-based programming test held in the computer labs, taking place at the the end of semester 1. This final exam is worth 90% of your overall grade.
"A Book on C: Programming in C", 4th edition; by Al Kelley and Ira Pohl.
|
Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail: school-office@inf.ed.ac.uk Please contact our webadmin with any comments or corrections. Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh |