Course Outline For Programming I
Course Outline For Programming I
Course Outlines
Course Title: Programming I
Course Code: BAIS3091
Credit Hours: 3
Course descriptions
The course is an introduction course in computer programming and problem solving. The
emphasis is on the general concept of problem solving and programming using state-of-the-art
language like C++ or C# language, algorithm designing using flow chart and pseudo code and
related techniques and program documentation.
Learning outcomes
On completion of this course, students should be able to:
Fully understand the software development life cycle
Discuss the importance of algorithms in the problem-solving process
Design algorithms for solving simple problems
Use a pseudocode or a programming language to implement test, and debug
algorithms for solving simple problems
Describe strategies that are useful in program debugging
Understand and explain the behavior of simple programs involving the
fundamental programming constructs
Modify and expand short programs that use standard conditional control
structures and functions
Design, implement, test and debug a program
Course ContentsChapter I – Introduction to programming
1
Chapter II – C++ Basics
2.1. Why C++
2.2. Structure of C++ program
2.3. C++ Basics
2.3.1. Variable and assignments
2.3.2. Input and output
2.3.3. Data types and expression
2.3.4. Operators and Expressions
Chapter III – Control Statements
3.1. Selection Statements
3.2. Loops: for, while, do…while
3.3. Flow control statements [break, continue, go to, and return]
Chapter IV – Arrays and string manipulation
4.1. Array definition
4.2. Array referencing
4.3. One dimensional and multidimensional ways
4.4.Strings: definition, accessing strings
Chapter V - Functions
5.1. Basic concept and need of function
5.2. Declaring and defining a function
5.3. Function components (parameters and arguments)
5.4. Calling /invoking function by value and reference
5.5 Recursive functions
Chapter VI – Pointers and File Operations
6.1.Pointer variables, declarations, and expressions
6.2.Pointers and arrays
6.3.Writing to and reading from files
6.4.Types of files, file access methods
Assessment methods (tentative)