CE151-4-AU-CO:
Introduction to Programming

The details
2020/21
Computer Science and Electronic Engineering (School of)
Colchester Campus
Autumn
Undergraduate: Level 4
Current
Thursday 08 October 2020
Friday 18 December 2020
15
29 July 2020

 

Requisites for this module
(none)
(none)
(none)
(none)

 

CE222, CE225, CE246

Key module for

BSC G610 Computer Games,
BSC G612 Computer Games (Including Year Abroad),
BSC I610 Computer Games (Including Placement Year),
BSC G400 Computer Science,
BSC G401 Computer Science (Including Year Abroad),
BSC G403 Computer Science (Including Foundation Year),
BSC I101 Computer Science (Including Placement Year),
MSCIG402 Computer Science,
MSCII100 Computer Science (Integrated Masters, Including Placement Year),
BSC 5B43 Statistics (Including Year Abroad),
BSC 9K12 Statistics,
BSC 9K13 Statistics (Including Placement Year),
BSC 9K18 Statistics (Including Foundation Year),
BSC G1G4 Mathematics with Computing (Including Year Abroad),
BSC G1G8 Mathematics with Computing (Including Foundation Year),
BSC G1GK Mathematics with Computing,
BSC G1IK Mathematics with Computing (Including Placement Year),
BENGH641 Communications Engineering,
BENGHP41 Communications Engineering (Including Foundation Year),
BENGHPK1 Communications Engineering (Including Placement Year),
BENGHQ41 Communications Engineering (Including Year Abroad),
BSC I1G3 Data Science and Analytics,
BSC I1GB Data Science and Analytics (Including Placement Year),
BSC I1GC Data Science and Analytics (Including Year Abroad),
BSC I1GF Data Science and Analytics (Including Foundation Year),
BSC G111 Computing,
BSC G112 Computing (Including Year Abroad),
BSC G113 Computing (Including Placement Year),
BSC LG01 Economics with Data Science,
BSC LG02 Economics with Data Science (Including Year Abroad),
BSC LG03 Economics with Data Science (Including Placement Year),
BENGH730 Mechatronic Systems,
BENGH731 Mechatronic Systems (Including Year Abroad),
BENGH732 Mechatronic Systems (Including Placement Year),
BSC L310 Sociology with Data Science,
BSC L311 Sociology with Data Science (including Year Abroad),
BSC L312 Sociology with Data Science (including Placement Year),
BSC L313 Sociology with Data Science (Including foundation Year),
BENGH169 Neural Engineering with Psychology,
BENGH170 Neural Engineering with Psychology (including Placement Year),
BENGH171 Neural Engineering with Psychology (including Year Abroad),
BENGH172 Neural Engineering with Psychology (Including Foundation Year),
BSC H737 Mechatronics,
BSC H167 Neural Technology with Psychology

Module description

This module will provide an introduction to the basic principles and concepts that underpin procedural programming. It will make use of a high level programming language (i.e. Python) supporting control, data and procedural abstraction. Students will also learn to analyse simple programs, incorporate standard control structures, write functions, arrays structures and I/O, as well as debugging simple programmes.

Module aims

The aim of this module is to provide an introduction to the fundamental concepts of computer programming, exemplified using Python from the command line and IDEs.

Module learning outcomes

After completing this module, students will be expected to be able to:

1. demonstrate an understanding of the basic principles and concepts that underlie the procedural programming model.
2. explain and make use of high-level programming language features that support control, data and procedural abstraction.
3. analyse and explain the behaviour of simple programs that incorporate standard control structures, parameterised functions, arrays, structures and I/O.
4. implement, test and debug simple programs that use the features listed above.

Module information

Outline Syllabus

Underlying principles of procedural programming

The imperative programming model; state, sequentiality and destructive assignment.

Abstraction: separating internal and external views; control, data and procedural abstraction.

A model of memory: variables; static and dynamic memory; the execution stack


Programming in a high-level procedural language

Identifiers and keywords

Expressions and types: well-typed expressions; operator precedence and expression evaluation

Statements and control flow: simple, compound and control statements; the assignment statement; selection and repetition

Functions: definition, and call; local variables, scope and existence; parameters, formal and actual parameters, parameter passing

Lists and dictionaries: declaration and initialisation; accessing elements
Input and output: console and file I/O

Learning and teaching methods

Lectures and Laboratories

Bibliography

  • Andrion, Aimee. (2016-04-09) Python for Everybody: Createspace Independent Publishing Platform.
  • Introduction to Computer Science and Programming in Python - MIT Online course, https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016/index.htm
  • Punch, W. F.; Enbody, Richard J. (2017) The practice of computing using Python, Harlow, England: Pearson Education Limited.

The above list is indicative of the essential reading for the course. The library makes provision for all reading list items, with digital provision where possible, and these resources are shared between students. Further reading can be obtained from this module's reading list.

Assessment items, weightings and deadlines

Coursework / exam Description Deadline Coursework weighting
Coursework   Progress Test - Week 7     20% 
Coursework   Assignment 1: Python Programming Exercises     30% 
Coursework   Assignment 2: Python Programming     50% 

Exam format definitions

  • Remote, open book: Your exam will take place remotely via an online learning platform. You may refer to any physical or electronic materials during the exam.
  • In-person, open book: Your exam will take place on campus under invigilation. You may refer to any physical materials such as paper study notes or a textbook during the exam. Electronic devices may not be used in the exam.
  • In-person, open book (restricted): The exam will take place on campus under invigilation. You may refer only to specific physical materials such as a named textbook during the exam. Permitted materials will be specified by your department. Electronic devices may not be used in the exam.
  • In-person, closed book: The exam will take place on campus under invigilation. You may not refer to any physical materials or electronic devices during the exam. There may be times when a paper dictionary, for example, may be permitted in an otherwise closed book exam. Any exceptions will be specified by your department.

Your department will provide further guidance before your exams.

Overall assessment

Coursework Exam
100% 0%

Reassessment

Coursework Exam
100% 0%
Module supervisor and teaching staff
Dr Delaram Jarchi, email: delaram.jarchi@essex.ac.uk.
Dr Delaram Jarchi, Dr Michael Sanderson
School Office, email: csee-schooloffice (non-Essex users should add @essex.ac.uk to create full e-mail address), Telephone 01206 872770

 

Availability
No
No
No

External examiner

No external examiner information available for this module.
Resources
Available via Moodle
Of 2352 hours, 58 (2.5%) hours available to students:
2294 hours not recorded due to service coverage or fault;
0 hours not recorded due to opt-out by lecturer(s).

 

Further information

Disclaimer: The University makes every effort to ensure that this information on its Module Directory is accurate and up-to-date. Exceptionally it can be necessary to make changes, for example to programmes, modules, facilities or fees. Examples of such reasons might include a change of law or regulatory requirements, industrial action, lack of demand, departure of key personnel, change in government policy, or withdrawal/reduction of funding. Changes to modules may for example consist of variations to the content and method of delivery or assessment of modules and other services, to discontinue modules and other services and to merge or combine modules. The University will endeavour to keep such changes to a minimum, and will also keep students informed appropriately by updating our programme specifications and module directory.

The full Procedures, Rules and Regulations of the University governing how it operates are set out in the Charter, Statutes and Ordinances and in the University Regulations, Policy and Procedures.