You are on page 1of 9

Khawaja Fareed University of Engineering & IT

Rahim Yar Khan


Tentative Course Plan
Department of Information Technology

Class: BS Information Technology Semester: 1ST Session: 2020-2024


Instructor: Aqeel Ur Rehman Email: aqeel.khokhar@kfueit.edu.pk
Course Title: Fundamental Programming Program: BS Information Technology
Course Number: COSC-1101 Credit Hours: 03
Lecture Time: -------
Course Objective & Outcomes:
In this course you will learn IT fundamentals, web and software development, IT systems analysis,
design, programming and networking. Gain an understanding of infrastructure technology, planning and
management. Learn to understand systems and implement technical programs including e-commerce, data
systems and mobile applications. Develop ideas and devise innovative solutions to problems such as
computer hacking, software piracy and security breaches.
Course Outcomes:

 Introduction to concepts of programming


 Understanding the basic syntax and logic formation
 Understanding of Array, Structure and Function and their applications
 File Management system in C++

Methods of Teaching:
 -Class participation is very important and will be evaluated on the bases of class attendance, punctuality, ability
to contribute in class discussions, participation in answer questions session and preparation level with assigned
readings. All students are expected to prepare for and participate in class.
 -The methodology of Direct / Live teaching at class room as per Lecture schedule where student have the
freedom to interact and ask any question to teacher regarding the current Lecture topic.
 -Student would also have option to contact with teacher at specific office hours (may change according to
summer and winter season) regarding the course related queries.

Resource Material Books Prescribed:


1. How to program, Deitel Series, Ninth Edition
2. Notes on Programming concepts will be provided
Reference Book
1. Programming with C++, Second Edition, Schaum’ outline, John R. Hubbard, Ph. D.
SEQUENCE OF TOPICS TO BE COVERED
Week Topics (outline of main topics and sub topics)
Introduction to Computers and C++
 Computers and the Internet in Industry and Research
 Hardware and Software
 Data Hierarchy
 Machine Languages, Assembly Languages and High Level
1 Languages
 C++
 Programming Languages
 Introduction to Object Technology
 Typical-Driving a C++ Application
 Operating Systems

P/1
 Internet and World Wide Web
 C++11 and the Open Source Boost Libraries
 How to Keeping up to Date with Information Technologies
Introduction to C++ Programming: Input / Output and Operators
 Introduction
 First Program in C++: Printing a Line of Text
2  Modifying Our First C++ Program
 Another C++ Program: Adding Integers
 Memory Concepts (Data-Types and Variable)
 Arithmetic
Introduction to C++ Programming: Input / Output and Operators
 Constants
 Operators
 Unary Operator
 Binary Operator
3
 Integer Overflow / Underflow
 Escape Sequences
 Type Casting
 Taking Input
 Types of Errors
Control Statements: Part 1: Assignment, ++ AND – Operator
 Decision Making: Equality and Relational Operators
 Algorithms
4  Pseudocode
 Control Structure
 If Selection Statement
If…else Double-Selection Statement
Control Statements: Part 1: Assignment, ++ AND – Operator
 Compound Condition
 Logical Operators
5
 Switch Structure
 Conditional Operator
 Goto Statement
Control Statements: Part 2; Logical Operator
 Loops
o Counter Controlled Loops
o Sentinel Loops
6  While Loop
 Do While Loop
 For Loop
 Nested For Loop
 Continue & Break Statement
Arrays
 Introduction to Arrays
 Advantages / Uses of Arrays
 Declaring One-Dimensional Array
 Array Initialization
 Accessing Individual Element of Array
 Accessing Array Elements using Loops
7
 Input and Output Values of an Array

P/2
Search in an Arrays
 Sequential Search
 Binary Search
 Sorting in Arrays
o Ascending
8 o Descending
 Selection Sort
 Bubble Sort
 Array of Characters
 2-Dimensional Array
 Multidimensional Array
Mid Exam
Structures:
 Structures
 Declaring a Structure
9  Defining Structure Variable
 Accessing members of structure
 Initializing a Structure Variable
 Array of Structure
Advance Structures:
 Nested Structures
10  Initializing Nested Structures
 Union
 Enumeration
Functions:
 Functions
 Types of Function
o Built in Functions
o User Defined Functions
 How user defined functions work in c++
11
 Declaring a user defined function
 Defining a function
 Passing Parameters to Functions
o Pass by Value
o Pass by Reference
 Default Values in Parameters
Functions:
 Functions and Arrays
 Functions and Structure
12
 Inline Function
 Recursion
 Function Overloading
Pointers:
 Address of Operator
13  Dereference Operator
 Void Pointer
 Pointers and Arrays
Pointers:
14
 Pointers and Strings

P/3
 Array of Pointer
 Pointers and Functions
File Handling:
15  File Handling
 Input / Output with Files
File Handling:
16  File Handling
 Input / Output with Files
Final Term Exam
Student Evaluation criteria:
Attendance 5%
Workshop / Assignments/Case study 5%
Surprise Test/Sudden Test , Quizzes 5%
Class Participation 5%
Mid Term Paper 30%
Final Term paper 50%
Total 100%
Student Responsibilities:
Students must attend class. Failure to attend class may result in failure in the course. Students must also arrive on time and
remain in class for the entire period. Cellular Phones and Beeper must be Turned off (Proper classroom decorum [behavior]
adopts, Course outlines and calendars explain requirements and assignments, students are responsible for knowing what they
say. Students are also responsible for doing all assigned work on time. Excessive absences (more than 03) will result in “F
Grade”. Students may prepare Sketchbook for taking notes and for references.

Instructor/Tutor
Approved by:

Chairman/ HOD/ Subject Specialist

 Binary, Decimal, Octal and


Hexadecimal number systems and
inter-conversion between them.
 BIOS (basic input output system).
 The skill of programming.
 Fundamentals of computer
programming.
 Course objectives.
 Major components of a computer
Week 1 system.
 Hardware.
 RAM (Random Access Memory).
 Programming Languages.
 High-level, middle-level and low-
level programming languages.
P/4
 Short intro for ‘Assembly’ and
‘Assembler’.
 Compiler, Interpreter and Hybrid
model.
 Software.
 What is programming?
 Brief introduction of
Programming languages.
 Some elements of a High-
level programming language
i.e (Variables, assignment
Week 2 operators, Boolean data type,
relational operators and
objects).
 Folder terms.
 Problem solving and it’s two
aspects,
1- Program Development
cycle.
2- Programming tools.
 Major steps involved in
Program development cycle,
 I.e (analyze, design, code,
debug and test and
documentation).
 Basic programming tool
‘Flowcharting’.
 Flowcharting.
 Importance of flowcharting.
 Long-winded introduction to
another programming tool
known as ‘Algorithms’
 Problem solving.
 Some basic examples of
‘Algorithms’ such as,
1- Washing machine
instructions.
2- Instructions for a ready-to-
assemble piece of
P/5
Week 3 furniture.
3- Finding the GCD (Greatest
common divisor) using
Euclid’s Algorithm.
 Refined definition of
‘Algorithm’
 History of algorithms.
 General idea behind
‘Algorithms’.
 Representation of
‘Algorithm’
1- Syntax.
2- Semantics.
 Comparison between Syntax
and Semantics.

 Problem Solving.
 Specific and generic solutions
of some problems mentioned
below:
1- Stolen cookies from the
cookie jar.
2- Brian’s shopping trip.
 Introduction to another
programming tool ‘Pseudo
code’
 Method for writing the
pseudocode,
1- Sequence
2- Selection /Branching
Week 4 3- Repetition/Looping
 Control structures and its
uses.
 Writing ‘Algorithms’ and
‘Pseudocodes’ from the
scratch considering two given
examples,
1- The box.
P/6
2- Drawing a rectangle.
3- Calculate average daily
sales.
4- Calculate miles per gallon.
 Introduction to C & C++
 Writing C programs.
 Use of ‘Text editor’ to create
and modify files containing C
codes.
 Understanding the terms
source code & source file.
 Executing the C source file
by invoking the C compiler.
 3 stages of Compilation.
1- Preprocessing
2- Compilation
3- Linking
 An example of a simple
program written in C
language.
 Anatomy of a C program.
 Comment and its use in
writing a program (in C).
 Header files.
1- E.g <stdio.h>
 Preprocessor Directives.
1- E.g #include
 Function and its use in a
program (in C)
1- E.g int main ( void )
 The function body and use
Week 5 case of curly braces.
 C statements.
1- E.g printf (“Hello,
World!”)
 Use of return 0;
 Tokens and their types,
1- Numeric constants
2- Character constants
P/7
3- String constants
4- Keywords
5- Names (identifiers)
6- Punctuation
7- Operators

 Arithmetic operators in C,
1- Division
2- Modulus
3- Multiplication
4- Subtraction
5- Addition

 Rules of Operator
Precedence.
 Use of parenthesis.
 Good Programming practices.
 Use of Incremental
Approach.
Week 6  Sample projects.

 Concept of Variables in C.
 Naming Variables.
 Case sensitivity.
 Legal identifiers.
 Declaration of variables in C
 Concept of ‘GARBAGE’ in
variable.
 Predefined data types in C,
1- int
2- float/double
3- char

 Initializing the ‘Variables’


 Assignment of ‘Variables’
 Displaying variables.
 Use of printf & scanf
P/8
statements.
 Example program for
Declaration and Assignments.
 Good programming practices
 While Loop
 Program Versatility
 Sentinel Values and Priming
Reads.
 Checking User Input using a
While Loop.

Week 7  Counter-Control Repetition


 Event-Controlled Repetition
 For Loops
 Do-While Loops.

P/9

You might also like