ÌÇÐÄ̽»¨
BI1PR3: Programming
Module code: BI1PR3
Module provider: School of Biological Sciences
Credits: 20
Level: 4
When you’ll be taught: Semester 1 / 2
Module convenor: Dr Evangelos Delivopoulos , email: e.delivopoulos@reading.ac.uk
Module co-convenor: Eur Ing Professor Simon Sherratt, email: r.s.sherratt@reading.ac.uk
Pre-requisite module(s):
Co-requisite module(s):
Pre-requisite or Co-requisite module(s):
Module(s) excluded:
Placement information: NA
Academic year: 2025/6
Available to visiting students: Yes
Talis reading list: No
Last updated: 16 April 2025
Overview
Module aims and purpose
This module introduces students to procedural and object-oriented programming. The C and C++ programming languages within the Windows Visual Studio integrated development environment are used for examples and practical work. You will gain practical programming skills in developing and writing your own programs. By the end of the module, you will be able to predict the outputs a segment of code will produce. You will write moderately complex programs in C/C++, using a variety of programming constructs, such as classes, objects, arrays, loops and conditionals.Â
This module will provide you with a strong foundation in programming. You will learn fundamental problem analysis techniques, logic, and design algorithmic solutions. You will gain a broad understanding of different programming approaches and constructs and be able to employ the ones suited best to a particular problem.Â
By the end of the module, you will design and program your own software: a grid-based game or an organization toolkit for your local General Practice clinic.Â
Module learning outcomes
By the end of the module, it is expected that students will be able to:
- Demonstrate how to compile and run programs within an integrated development environment
- Demonstrate how to edit and debug programs
- Recognise programming constructs in C/C++
- Predict what a segment of code will produce (tracing)
- Develop a program
Module content
Lecture material includes the following topics:Â
- Problem solving,Â
- ³¢´Ç²µ¾±³¦,Ìý
- Keywords and operators in C/C++, libraries in C/C++Â
- Computer architectureÂ
- Variables in C/C++: characters, strings, integers, floats, structures, unionsÂ
- User interaction: formatted input/outputÂ
- Conditional statements: if…then, do…while, while, switchÂ
- Loops and arraysÂ
- Functions and scope, castingÂ
- ±Ê´Ç¾±²Ô³Ù±ð°ù²õÌý
- File processingÂ
- Data structuresÂ
- Classes: objects, constructors inheritance, polymorphism, virtual functions (static/dynamic binding)Â
- Function overloading, default argumentsÂ
Practical classes include the following training / activities: Â
- Good coding practice: writing comments, structuring your code properlyÂ
- Use of conditionals and nested if…then…else statementsÂ
- Use of loops and arrays to handle large amounts of dataÂ
- Use of functions, passing parameters by value and by referenceÂ
- Designing and writing a classÂ
- Instantiating objects and arrays of objectsÂ
- Use of constructors and overloaded constructorsÂ
- Use of inheritance and overriding functionsÂ
Structure
Teaching and learning methods
The learning outcomes will be met through a mixture of lectures, PC-based practical classes, self-directed learning and directed independent study. Appropriate supplementary information and reading lists will be provided on Blackboard.  Â
Practical sessions will prepare and support students to write their own grid-based game or software package for a local General Practice clinic.Â
Study hours
At least 40 hours of scheduled teaching and learning activities will be delivered in person, with the remaining hours for scheduled and self-scheduled teaching and learning activities delivered either in person or online. You will receive further details about how these hours will be delivered before the start of the module.
 Scheduled teaching and learning activities |  Semester 1 |  Semester 2 | Ìý³§³Ü³¾³¾±ð°ù |
---|---|---|---|
Lectures | 12 | 6 | |
Seminars | |||
Tutorials | |||
Project Supervision | |||
Demonstrations | |||
Practical classes and workshops | 12 | 6 | |
Supervised time in studio / workshop | |||
Scheduled revision sessions | |||
Feedback meetings with staff | 4 | ||
Fieldwork | |||
External visits | |||
Work-based learning | |||
 Self-scheduled teaching and learning activities |  Semester 1 |  Semester 2 | Ìý³§³Ü³¾³¾±ð°ù |
---|---|---|---|
Directed viewing of video materials/screencasts | 40 | 20 | |
Participation in discussion boards/other discussions | |||
Feedback meetings with staff | |||
Other | |||
Other (details) | |||
 Placement and study abroad |  Semester 1 |  Semester 2 | Ìý³§³Ü³¾³¾±ð°ù |
---|---|---|---|
Placement | |||
Study abroad | |||
 Independent study hours |  Semester 1 |  Semester 2 | Ìý³§³Ü³¾³¾±ð°ù |
---|---|---|---|
Independent study hours | 100 |
Please note the independent study hours above are notional numbers of hours; each student will approach studying in different ways. We would advise you to reflect on your learning and the number of hours you are allocating to these tasks.
Semester 1 The hours in this column may include hours during the Christmas holiday period.
Semester 2 The hours in this column may include hours during the Easter holiday period.
Summer The hours in this column will take place during the summer holidays and may be at the start and/or end of the module.
Assessment
Requirements for a pass
Students need to achieve an overall module mark of 40% to pass this module.
Students taking the BEng Biomedical Engineering programme must also achieve a mark of at least 30% in each summative assessment.
Summative assessment
Type of assessment | Detail of assessment | % contribution towards module mark | Size of assessment | Submission date | Additional information |
---|---|---|---|---|---|
In-class test administered by School/Dept | Online Blackboard MCQ test | 20 | 18 questions in 1 hour | Semester 1, Teaching Week 12 | 17 MQCs and 1 long answer question. |
Portfolio or Journal | Lab practicals | 30 | 4 x programs with representative outputs | Semester 1, Teaching Week 12 | Throughout semester 1, students will be completing a range of programming labs to supplement learning. Students will develop a portfolio of their work (their programs and evidence they work.) Labs in semester 2 receive formative feedback before the project report. |
Written coursework assignment | Project report | 50 | 3,500 word report | Semester 2, Teaching Week 12 |
Penalties for late submission of summative assessment
The Support Centres will apply the following penalties for work submitted late:
Assessments with numerical marks
- where the piece of work is submitted after the original deadline (or any formally agreed extension to the deadline): 10% of the total marks available for that piece of work will be deducted from the mark for each working day (or part thereof) following the deadline up to a total of three working days;
- the mark awarded due to the imposition of the penalty shall not fall below the threshold pass mark, namely 40% in the case of modules at Level 3 (i.e. foundation modules for Part 0) and Levels 4-6 (i.e. undergraduate modules for Parts 1-3) and 50% in the case of Level 7 modules offered as part of an Integrated Masters or taught postgraduate degree programme;
- where the piece of work is awarded a mark below the threshold pass mark prior to any penalty being imposed, and is submitted up to three working days after the original deadline (or any formally agreed extension to the deadline), no penalty shall be imposed;
- where the piece of