Department of Civil Engineering

Semester:

1

Course Code:

CO1010

Course Name:

Programming for Engineers I

Credit Value:

3 (Notional

hours 150)

 

 

 

 

Prerequisites:

None

Core/Optional

Core

Hourly Breakdown

Lecture hrs.

Tutorial hrs.

Practical hrs

Design hrs

Independent Learning & Assessment hrs.

15

10

30

10

85

Course Aim: To develop logical thinking through algorithms and structured programming constructs so that the students will be able to build software applications to analyze and solve engineering problems.

 

Intended Learning Outcomes:

On successful completion of the course, the students should be able to;

      construct algorithms to solve engineering problems

      use structured programming constructs and build software applications

      apply good programming practices

Course Content:(Only main topics & subtopics)

      Basics : Variables. Operators and precedence. Data types. Number systems and numerical precision.

      Control Structures: Conditions and loops.

      Modularization : Standard libraries and functions. User-defined functions.

      Input/Output: Standard input/output. File input and file output

      Data Structures: List and list comprehension. String processing and formatting. Stack and Queue. Dictionaries.

      Object-Oriented Concepts: Classes and Objects. Accessing variables and functions within objects.

      Quality Assurance: Good programming practices. Testing. Debugging. Exception and error handling.

      Algorithms : Developing algorithms and writing programs for the solutions of well-defined problems related to Engineering.

      Numerical Computations: Introduce concepts of numerical packages/libraries such as numpy and the use of mathematical software such as Matlab to solve problems such as those listed under

item 8

Teaching /Learning Methods:

Flipped classrooms, small group discussion classes, project-based learning.

Assessment Strategy:

Continuous Assessment 60%

 

 

Final

Assessment 
40%

 

 

Details:

Online class participation 5% Practicals 35%

Assignments and Projects 20%

Theory (%)

 

40%

Practical (%)

 

-

Other (%)

 

-

Recommended Reading:

      John DeNero (2017), Composing Programs, a free online introduction to programming and computer science, 10 Oct 2019, http://composingprograms.com

      Ron Reiter (2018), Interactive Python tutorial, 10 Oct 2019,https://www.learnpython.org/












Department of Civil Engineering