COMP10060 Computer Science for Engineers I

Academic Year 2022/2023

This course provides students with an introduction to computer programming. Major topics include algorithm development, programming fundamentals, control flow, and data structures. By the end of the course, students will be able to write simple programs to solve small-scale problems. The module is introductory in nature and assumes no previous programming knowledge, and so is suitable for first year students, who require a formal and structured introduction.This module will include weekly two-hour computing practicals. It is a requirement that you have access to your own laptop to undertake the practical elements and to learn how to code.

Show/hide contentOpenClose All

Curricular information is subject to change

Learning Outcomes:

On completion of this module students should be able to:
1. Solve simple problems by writing computer programs
2. Be aware of most basic programming topics
3. Be familiar with the basics of the C programming language

Indicative Module Content:

Introduction: what is a computer? what is an algorithm? what is a program? An engineering problem-solving methodology. General format of a C program.

Fundamentals of C: variables and constants. Assignment statements. Formatted input/output from/to the keyboard/screen. Basic datatypes. Type casting. Keywords and identifiers. Arithmetic, relational, and logical operators; conditionals. Operator precedence.

Loops: for, while, do-while. Infinite and unbounded loops.

Algorithm development and stepwise refinement: flowcharts and pseudocode. Sources and types of errors in C programming.

Functions: C library functions. Programmer- defined functions: definition, declaration, function call. Formal and actual function
parameters: call by value. Storage class and scope.

1-D arrays: declaration and initialization. Simple linear searching with arrays. Passing arrays to functions: call by address.

Student Effort Hours: 
Student Effort Type Hours




Autonomous Student Learning




Approaches to Teaching and Learning:
This module is mainly about problem solving using programming (C) and in based mainly on laboratory sessions with mainly on line tests being used. 
Requirements, Exclusions and Recommendations

Not applicable to this module.

Module Requisites and Incompatibles
COMP10010 - Introduction to Programming I, COMP10020 - Introduction to Programming II, COMP10110 - Computer Programming I, COMP10120 - Computer Programming II, COMP10180 - Computer Programming II (O/L), GENE30040 - Programming for Biologists, MIS10080 - Programming for Bus Analytics, MIS20050 - Prog for Bus Analytics II, MIS20080 - Introduction to Programming, MIS30110 - Computation Modelling for Bus

Assessment Strategy  
Description Timing Open Book Exam Component Scale Must Pass Component % of Final Grade
Continuous Assessment: Weekly lab sessions, online tests and in-class tests Varies over the Trimester n/a Alternative linear conversion grade scale 40% No


Carry forward of passed components
Remediation Type Remediation Timing
In-Module Resit Prior to relevant Programme Exam Board
Please see Student Jargon Buster for more information about remediation types and timing. 
Feedback Strategy/Strategies

• Feedback individually to students, on an activity or draft prior to summative assessment
• Feedback individually to students, post-assessment

How will my Feedback be Delivered?

Feedback is given constantly during the semester with each lab and also with the assessment elements of the lab tests.

Timetabling information is displayed only for guidance purposes, relates to the current Academic Year only and is subject to change.
Lecture Offering 1 Week(s) - 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33 Thurs 11:00 - 11:50
Lecture Offering 1 Week(s) - 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33 Tues 12:00 - 12:50
Practical Offering 1 Week(s) - 21, 23, 24, 25, 26, 29, 30, 32, 33 Mon 11:00 - 12:50
Practical Offering 4 Week(s) - 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33 Wed 11:00 - 12:50
Practical Offering 5 Week(s) - 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33 Fri 11:00 - 12:50