MEC1161 Fundamentals of Programming - Summary Notes
Course Information
Module: MEC1161 Fundamentals of Programming
Instructor: Dr. Tang Lai Meng (LaiMeng.Tang.2@glasgow.ac.uk)
Course Schedule
Weekly topics include Introduction, Computing Basics, Data Types, Control Statements, Functions, Arrays (Test 1 - Week 6), Pointers, File Handling, Structures, Dynamic Data Structures, and Secure Coding (Project Submission - Week 12).
Assessment Criteria
Labs: 10%
Final Exam: 35%
Group Project: 35%
Test 1: 20%
Course Resources
Recommended Texts: "The C Programming Language" by Kernighan and Ritchie, "Secure Coding in C and C++" by Robert C. Secord.
Additional Resource: MIT Open Courseware - Practical Programming in C.
Key Concepts in Computational Thinking
Problem Solving Stages: Problem Definition, Analysis, Algorithm Design, Solution Implementation, Verification & Validation, Documentation, Maintenance.
Concepts: Decomposition (breaking down problems), Pattern Recognition (identifying patterns), Abstraction (focusing on relevant features), Algorithm Design (structured instructions).
Flowchart and Pseudocode
Flowcharts: Visual representation of algorithms.
Pseudocode: Informal, high-level description of algorithm logic.
Example Algorithms
Health Teller: Calculates Body Size Category based on BMI ().
Sum Calculator: An example algorithm to sum numbers.