Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 8

Faculty of Computing Riphah International University

Course Description

Course Code CS1134


Course Category Computing Core
Course Title Programming Fundamentals
Credit Hours 03
Prerequisites Nil
Co-Requisites -
Assessment Instruments with Sessional Work: 40%
Weights (homework, quizzes, - Assignments 8%
midterms, final, programming - Quizzes 8%
assignments, lab work, etc.) - Class Participation 4%
- Lab 15%
Mid Term: 20%
Final Term: 30%
Semester Project: 15%
Course Instructor Mehwish Javed
URL (if any) Moellim.riphah.edu.pk
Course Description This course introduces the fundamental concepts of structured
programming, and provides a comprehensive introduction to
programming. Topics include software development
methodology, data types, control structures, functions, arrays,
and the mechanics of running, testing, and debugging.
Textbook 1. C++ PROGRAMMING: FROM PROBLEM ANALYSIS TO
PROGRAM DESIGN by D.S. MALIK Ed. 6
2. Introduction To Design & Analysis Of Algorithms By Anany
Levitin 3rd Edition
3. C++ Primer by Stanley Lippman Ed.5
Reference Material Lecture Handouts, Sample Programs
Course Goals/Objectives CLO 1: Trace the execution of programs written in a (high-
level) computer programming language.
CLO: 2. Explain how computer programming may be used to
solve his/her problems to classmates.
CLO: 3. Extend and adapt code written by other programmers.
CLO: 4. Use an appropriate programming environment to code,
compile, run and debug computer programs
CLO: 5 Implement, test, and debug a program that uses

1
Faculty of Computing Riphah International University

appropriately fundamental data and control


CLO: 6 Demonstrate working with primitive data types, strings
and arrays
CLO: 7 Demonstrate appropriate use of basic programming
constructs for a given programming task.
CLO: 8 Demonstrate working with simple I/Os.
CLO: 9 Demonstrate using of available program
libraries/functions and creating own functions
CLO: 10 Analyze problems and design algorithms (in pseudo
code).
CLO: 11 Evaluate the suitability of computer language data and
control structures to achieve basic problem-solving

Code Bloom’s Taxonomy Course Teaching Course


# And Course Learning Outcomes Strategies Assessment %Weight
Methods
1.0 Remember
Trace the execution of programs
Class Activities,
1.1 written in a (high-level) computer Lab Tasks 5%
Lab Activities
programming language.
2.0 Understand
Explain how computer programming Assignment,
Lectures, Lab
2.1 may be used to solve his/her Quiz, Mid 10%
Activities
problems to classmates. Term
Lectures, Class Assignment,
Extend and adapt code written by
2.2 Activities, Lab Lab Task, Mid 5%
other programmers.
Activities Term, Project
3.0 Apply
Use an appropriate programming
environment to code, compile, run Class Activities, Lab Tasks
3.1 10%
Lab Activities Assignment
and debug computer programs
3.2 Implement, test, and debug a Lectures, Class Lab Tasks, 10%
program that uses appropriately Activities, Lab Quiz,
fundamental data and control Activities Assignment,
Project, End
term exam,
Mid Term,
2
Faculty of Computing Riphah International University

Project
Lab Tasks,
Quiz,
Lectures, Class
Demonstrate working with primitive Assignment,
3.2.1 Activities, Lab 15%
data types, strings and arrays Mid Term, End
Activities
term Exam,
Project
Lab Tasks,
Demonstrate appropriate use of basic Lectures, Class Assignment,
3.2.2 programming constructs for a given Activities, Lab Midterm, End 15%
programming task. Activities Term Exam,
Quiz, Project
Demonstrate working with simple Lectures, Class
Lab Tasks,
3.2.3 Activities, Lab 5%
I/Os. Assignment
Activities
Demonstrate using of available Lab Tasks,
program libraries/functions and Lectures, Class Assignment,
3.2.4 creating own functions. Activities, Lab Midterm, End 15%
Activities Term Exam,
Quiz, Project
4.0 Analyze
Analyze problems and design Class Activities, Lab Tasks,
4.1 5%
algorithms (in pseudo code). Lab Activities Project
5.0 Evaluate
Evaluate the suitability of computer
Lectures, Lab
5.1 language data and control structures Lab Tasks, 5%
Activities
to achieve basic problem-solving
6.0 Create

Topics Covered in the Course, Please see details on next page


with Number of Lectures on
Each Topic
Laboratory NA
Projects/Experiments Done in
the Course
Programming Assignments Done NA
in the Course
Class Time Spent on (in credit Theory Problem Solution Social and Ethical
hours) Analysis Design Issues
0.75 0.5 1.5 0.25

3
Faculty of Computing Riphah International University

Oral and Written


Communications

Topics Covered in the Course, with Number of Lectures on Each Topic

Topics Hours
Introduction to computer programs, source code and executable programs, the 4
compiler, history of programming languages, introduction to C++ language, basics
of C++ programming language, the concept of variable.
Writing programs involving sequence statements 3
Operators and expressions, arithmetic operators, unary operators, arithmetic 5
operations, comparison operators, logical operators, the order of precedence.
The IF statement, If-else statement, nested if, the SWITCH statement
The iteration; FOR Statement, The WHILE Statement, The DO-WHILE 5
Statement, BREAK
& CONTINUE
Defining an array, single & multi-dimensional arrays, using arrays to store data 5
String Handling: Basic String Handling Functions, Character conversions, Memory 3
Operations
Using the Functions: Defining a Function, Accessing a Function, Function 8
Prototypes,
Passing Arguments to Function, Functions & Arrays, Pass by reference, Pass by
value
Working with the Pointers & Structures: What is a Pointer?, Use of Pointer, 4
Pointers &
Functions, Pointers & Arrays, Arrays of Pointers, Multidimensional arrays &
pointers, Static Initialization of Pointer Arrays, Pointers & Structures
User defined data types, Structures, Defining a structure, Using structure instance, 4
array of structure variables, Passing structure variable to function, using pointers to
structures.
Working with text data files, why use text data files, standard library C++ fstream, 4
How to achieve file handling, functions used in file handling, Defining and
opening files, using different modes while opening a file, using file position
pointers, example programs involving text files.

4
Faculty of Computing Riphah International University

Weekly Lecture Plan

Wee TOPIC CLOs Mapping Blooms


k Taxonomy
1 Course Introduction K,C
 Algorithms
 Types of Languages & translators
 Flow charts [Basics]
Introduction to C++
 Analyzing a problem
 Decomposition
Lab 01
Simple C++ programs in Dev C++ CLO 2.1
2 Introduction to C++ K,C
 Pseudo code / Flowchart
 Analyzing a problem
 Decomposition
Designing [Sequence & Iterations]
Expressions
 Arithmetic operators
 Assignment operators
 Increment and decrement operators

Introduction to operators and expressions, unary


operators, comparison operators, logical operators
Lab 02
Fundamental symbols and concepts in flowcharts CLO 2.1, 3.2
and pseudo code
3 Fundamentals Of C++ K, C, A
 Elements of a simple program
 Variables and assignments
 Input and output functions
 Basic syntax
 source code
 The compilation of a program
 Executable program
Lab 03
User input for various data types, such as names,
numbers, and percentages CLO 2.1, 3.2
4 Selection Statement K, C, A
 If- Else Construct
Quiz # 01 CLO 2.1, 3.2
Lab 04

5
Faculty of Computing Riphah International University

if and if-else statements in C++ for making CLO 3.2


decisions based on conditions
5 Selection Statement K, C, A
 Switch Statement
 Nested If Else
Assignment # 01 CLO 2.1
Lab 05
Understanding nested if-else and switch
statements for decision-making in C++ CLO 3.2
6 Iteration Construct K, C, A
 While Statement
 Do-While Statement
 For Statement
Lab 06
Syntax of a for loop, including initialization,
CLO 3.2
condition, and increment/decrement
7 Iteration Construct K, C, A
 While Statement
 Do-While Statement
 For Statement
Lab 07
Syntax of a for, while, do while loop, including
initialization, condition, and CLO 3.2
increment/decrement
8 Iteration Construct K, C, A
 Repetition Structure
 Nested Loops
Midterm CLO 1.1, 2.2, 3.1,
3.2
Lab 08
Syntax of a Nested for, while, do while loop, CLO 3.2
including initialization, condition, and
increment/decrement
9 Arrays K, C, A

Quiz # 02 CLO 3.1

Lab 09
Understanding how to initialize arrays with
CLO 3.2
specific values
10 2D Arrays K, C, A
Quiz # 03 CLO 3.1

11 Functions K, C, A
 Defining and calling functions
6
Faculty of Computing Riphah International University

 Arguments
 Termination
 Recursion
Quiz # 04 CLO 3.1
Lab 10
Learn to write C++ functions with and without CLO 3.2
return values
12 Structures K, C, A
 Structure variables
 Structure types
Nested arrays and structures
Lab 11 CLO 3.2
Learn to write C++ functions with and without
return values
Void Functions
Functions by value
Functions by reference
Initialize Structures
Create an instance of a struct
How to declare an array in structure
13 File Handling K, C, A

Lab 12 CLO 3.2, 4.1


Understanding Pointers
Creating Pointers
Pointer Initialization
Access Data via Pointer

14 String Class K, C, A
 String literals
 String variables
 C string library
 Arrays of strings
Quiz # 05 CLO 3.2
Lab 12 CLO 3.2, 5.1
Understanding CStrings
15 Revision
Project CLO 2.1, 3.2, 4.1,
5.1
16
Final term CLO 1.1, 2.1, 2.2,
3.1, 3.2

7
Faculty of Computing Riphah International University

Cours
e
LOs PLO PLO PLO PLO PLO PLO PLO PLO PLO PLO1 PLO1
# 1 2 3 4 5 6 7 8 9 0 1
1.1 √ √
2.1 √
2.2 √
3.1 √
3.2 √ √
3.2.1 √
3.2.2 √
3.2.3 √
3.2.4 √
4.1 √
5.1 √

Grading Policy

A+ 90 and Above
A 80 and 89
B 70 - 79
C 60 – 69
D 50 – 59
F Below 50

You might also like