BAHIR DAR INSTITUTE OF TECHNOLOGY
COMPUTING FACULTY
PROGRAMMING & COMPUTING CHAIR
FUNDAMENTALS OF PROGRAMMING II COURSE GUIDE BOOK ACADAMIC
YEAR 2017 E.C
1. General Information
Course Title FUNDAMENTALS OF PROGRAMMING II
Course Code InSy2031 Instructors
Pre-requisite Fundamentals of Programming I Name Tiruedle A.
Course type Major/Compulsory/common Office no CS Building 303
CP/ Cr.hr 5 Email
Contact Lecture Tutorial Lab H. Study Consultation hr. Wednesday 10-12 LT
hours
2 3 Lab Instructors /Assistants
Target Program/ Year Section Name Geremew D.
Group Department
IS 2nd Sem I Office no
2. Course Description
The course is designed to introduce problem solving techniques by dividing large programs in to sub
modules through the concept of function in C++. Such programming technique simplifies programming
tasks by re-use of modules in different programs or in the same program, facilitates understanding,
debugging and maintaining the program. The course also introduces advanced data structures such as
pointers enable dynamic allocation and de-allocation of memory, structures help to store and access
records in an easy way, File Operations (File Input/output).
Laboratory exercises are dedicated to practice the all basics on writing simple C++ programs and will
reinforce basic programming concepts, logic flows and structured programming design using C++
function concepts, structure and pointer data types and file management.
3. Course objective/learning out come
At the end of the course students will be able to
Understand the principles of file data storage and manipulation
Write a program that uses each of the following fundamental programming constructs: Structures,
Functions, Arrays, pointers
This course guide book format was adopted from BiT Quality Assurance and Enhancement Office 2018E.C
4. Course outline with teaching methodology, week and reference
Course Outline with Assessment & Reference
Course Content Teaching Time (in References Assessment
Methodology Week)
Chapter 1: Functions in C++ Lecture 1-2
Basic concept of Functions Laboratory
Declaring, Defining and Calling functions
Function components (Parameters and Arguments)
Calling /invoking function by Value and Reference
parameters Assignment I
Function Recursion
Chapter 2: Arrays Lecture 3
Declaring, Initializing, Accessing and Processing Laboratory
arrays
Operations on Arrays
Arrays and Functions
Two-dimensional and Multi-dimensional arrays
Test
Chapter 3: Strings Lecture 4
Initialization of Strings Laboratory
Assigning values to Strings
String manipulation functions
Chapter 4: Pointers Lecture 5
Basic concept of Pointers Laboratory
Pointer variables and declaration
Arrays of Pointers
Pointer and Arrays
Pointer Arithmetic
Pointer and String
Dynamic Memory, new and delete operators
Chapter 5: Structures Lecture 6-7 Assignment
Basic concept of Structures Laboratory II
Referencing member of a Structure
Arrays of Structures
Referencing the array structure
Structure and functions ✓ Pointers to Structure
Chapter 6: File Operations (File Input/Output) Lecture 8
Stream classes Laboratory
Types of Disk File Access
Operation with File
File Pointers and their Manipulators
Final Exam
5. Laboratory /Work shop/ session content and required material
Time (in week) Laboratory Topic Material or tools
Week 2 Functions Borland C++
This course guide book format was adopted from BiT Quality Assurance and Enhancement Office 2018E.C
Week3 Arrays Borland C++
Week 4 Strings Borland C++
Week5 Pointers Borland C++
Week 6-7 Structures Borland C++
Week8 File operations Borland C++
6. Assessment type, weight and duration (Minimum including Mid-exam and
Final-exam)
Assessment type Mark allotted
Mid 25 %
Assignment I 10%
Assignment II 10%
Quiz 5%
Final Exam 50%
Total 100%
7. Course Policy
All students are expected to abide by the code of conduct of students (article 166 and 166.1.1, of the Senate
Legislation of Bahir Dar University May 20, 2005) throughout this course. Academic dishonesty, including cheating,
fabrication, and plagiarism will not be tolerated and will be reported to concerned bodies for action. Class
attendance and participation: You are expected to attend class regularly. I will take attendance on regular days
during the semester to ensure that students are coming to class, and if you miss class repeatedly, your grade will be
affected as it has value. If you miss more than 85% lecture and tutorial and 100% for laboratory class attendance you
will not sit for final exam.
8. Text and reference book
A. Text Book
1. Walter Savitch, Problem Solving with C++ (6thed), USA, Addison Wesley,2006
2. Dromey, R.G., How to solve it by computer, UK, Prentice Hall Inc. ,1982
Authorization
a. Prepared instructor’s/s’ Name: _________________Signature: _________Date: _____________
b. Checked course chair’s Name: _________________Signature: ________ Date: _____________
c. Verified chair holder’s Name: __________________Signature: ________ Date: _____________
Faculty seal
This course guide book format was adopted from BiT Quality Assurance and Enhancement Office 2018E.C