Course Catalogue

Computing Science 1 UESTCHN1013

  • Academic Session: 2026-27
  • School: School of Engineering
  • Credits: 10
  • Level: Level 1 (SCQF level 7)
  • Typically Offered: Semester 1
  • Available to Visiting Students: No
  • Collaborative Online International Learning: No
  • Curriculum For Life: No

Short Description

The aim of the CS1P (Half) course is to produce programmers equipped with an understanding of:

Fundamental computational concepts underlying most programming languages;

A range of problem-solving techniques using computers;

The skills supporting the solution of small problems using a programming language;

The clear expression of solutions at different levels of abstraction.

Timetable

Lectures taught at 2 per week, one-hour tutorial and two-hour laboratory session per fortnight.

Requirements of Entry

Eligible students should have a Grade B or above in Higher Mathematics, or a Grade C in Higher Mathematics AND a Grade B or above in Higher Computing/Information Systems, or a suitable equivalent.

Excluded Courses

None

Co-requisites

None

Assessment

Examination 70%, coursework 30%.

Main Assessment In: December

Course Aims

The aim of the CS1P (Half) course is to produce programmers equipped with an understanding of:

Fundamental computational concepts underlying most programming languages; A range of problem-solving techniques using computers; The role of programming within the overall software development process;

Attitudes and working practices appropriate for a professional programmer; The skills supporting the solution of small problems using a programming language; The clear expression of solutions at different levels of abstraction; Independent and self-motivated study in Computing Science.

Intended Learning Outcomes of Course

By the end of this course students will be able to:

Knowledge - know about:

1. techniques for solving problems;

2. basic computational concepts and elementary data structures;

3. the edit-compile-link-run cycle from a user's point of view;

4. testing strategies;

5. The main activities of software development and their interactions, and some of the major problems of software development.

 

Skills - be able to:

6. hand-execute simple programs, showing how input data is processed, output data is produced, and how the values of internal variables change;

7. explain at various levels the behaviour of fragments of programming language code;

8. amend existing programs to adjust or correct their functionality;

9. translate well-structured plans into working programs;

10. analyse simple programs involving text, numbers and graphics, producing a top-level plan with refinements;

11. use the error message of the compiler to identify and correct mistakes in program syntax;

12. use testing strategies to identify and correct semantic errors in programs.

 

Attitudes - appreciate that:

13. a programmer requires creativity in order to solve problems and precision in the construction and manipulation of programming language code;

14. a programmer builds up a repertoire of techniques for solving problems, usually adapting and reusing techniques as each new problem is encountered;

15. a programmer must be able to communicate his/her ideas to others;

16. effective programming requires effort both in front of and away from a computer;

17. learning to program requires commitment and perseverance.

Minimum Requirement for Award of Credits

No exceptions