[go: up one dir, main page]

0% found this document useful (0 votes)
60 views5 pages

Intro to Programming with C++ Basics

The document outlines the Programming Fundamentals course (CSC-121), which is a 3+1 credit hour introductory course aimed at students with little to no programming experience, focusing on C++ and core programming principles. It includes course objectives, learning outcomes, weekly topics, assessment methods, and recommended textbooks and resources. The course emphasizes problem-solving skills, algorithm design, and the implementation of programming concepts through practical applications.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
60 views5 pages

Intro to Programming with C++ Basics

The document outlines the Programming Fundamentals course (CSC-121), which is a 3+1 credit hour introductory course aimed at students with little to no programming experience, focusing on C++ and core programming principles. It includes course objectives, learning outcomes, weekly topics, assessment methods, and recommended textbooks and resources. The course emphasizes problem-solving skills, algorithm design, and the implementation of programming concepts through practical applications.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Programming Fundamentals

General Information
Course Catalog# CSC-121
Credit Hours 3+1 (Theory Credit Hour = 3, Lab Credit Hours = 1)
Prerequisite None
Semester BS(CS/SE) – (I)

Course Objectives / Description


This introductory course is designed for students with little or no prior programming
experience. It offers both a conceptual and hands-on introduction to the fundamentals of
programming. While the C++ language is used as the primary medium of instruction, the
emphasis remains on core programming principles that are applicable across languages.
Through this course, students will develop the skills and techniques needed to analyze
problems and implement effective programmatic solutions.

Course Learning Outcomes (CLOs)


No. Course Learning Outcome Domain Level Assessment Tool
C1 Understand the basic problem-solving C 2 Class Participation,
steps and logic constructs Quiz, Mid Exams.,
Assignments
C2 Demonstrate basic programing concepts C 3 Class Activity, Quiz,
Assignments
C3 Design and implement algorithms to solve C 3 Worksheets, Project
real world problems.

Domains:
C=Cognitive, A=Affective, P=Psychomotor
Levels:
Cogn itive = {1: Remembering, 2: Understanding, 3: Applying, 4: Analyzing, 5: Evaluating,
5: Creating}
Affective = {1: Receiving, 2: Responding, 3: Valuing, 4: Organizing, 5: Characterizing}
Psychomotor= {1: Imitation, 2: Manipulation, 3: Precision, 4: Articulation, 5: Naturalization}

Course Contents
Week No. Topic Reading CLO
1  Introduction C1
 Languages and programming languages
 Levels of programming languages Chapter 1 and
 Generation of programming Languages Teacher notes
 Criteria in a good language design
 Creating an algorithm
2  Algorithms continued Chapter 2 and C1
 Compiling, Running, and Debugging the Teacher Lecture
Code
Week No. Topic Reading CLO
 Basic Input and Output
 Escape Sequences
3  Data types (String, Int, float, char) C1, C2
 Type casting
◦ Implicit
◦ Explicit
 Operators in C++
◦ Arithmetic Chapter 2 and
◦ Assignment Teacher Lecture
◦ Relational or Comparison
◦ Logical
◦ bitwise
◦ Unary
 Operators’ precedence
4  Flowcharting C1, C2
 Flow of control and branching
◦ if
Chapter 2&3 and
◦ if else
◦ if else if Teacher Lecture
 Nested if else
 Short hand if-else
5  Multi-way branching in C++ C1, C2
 Overview switch-case statements Chapter 3 and
 Loops Teacher Lecture
◦ for loop, while loop & do While
First Mid Term Exam
6.  Nested loops Chapter 3 & 7 and C1, C2
 Overview of 1D arrays Teacher Lecture
7.  2D array Chapter 7 and C1, C2
 2D array examples Teacher notes
8.  Character array Chapter 7 & 10 C1, C2
 String and its functions
 Working with Records (Structures)
and Teacher
 Structure and Arrays Lecture
9.  Working with User Defined Functions C2, C3
(UDF)
◦ Return types of functions Chapter 5 and
◦ Arguments of functions Teacher Lecture
◦ Returning multiple values from a
function
10  Call by value and Call by reference C2, C3
 Programming style
◦ Comments, indentation, naming
Chapter 5 and
variables, and constants
 Dividing a program into modules Teacher Lecture
 Scope of variables
 Function overloading
11 & 12  Input, output with files Chapter 6 and C3
 Reading and writing in files Teacher Lecture
Second Term Exam
13  Pointers Chapter 9 and C2
◦ Memory and variables Teacher Lecture
◦ Declaring the pointer
◦ Initializing the pointer
◦ Integer pointer
Week No. Topic Reading CLO
◦ Floating pointer
◦ Character pointer
◦ Pointing to pointer variables

14.  Dynamic array Chapter 8 and C2, C3


 Macros Teacher Lecture
15.  Introduction to Object Oriented C1, C3
Programming (OOP)
Chapter 10 and
◦ Classes
◦ Objects Teacher Lecture

16. Revision and Project Presentation C1


Final Term Exam

CLO-PLO Map
Graduate Attribute (PLOs)
CLOs GA GA GA GA GA1 GA1 GA12
GA1 GA2 GA5 GA7 GA9
3 4 6 8 0 1
CLO 1 1 1 0 0 0 0 0 0 0 0 0 0

CLO 2 0 1 0 0 0 0 0 0 0 0 0 0

CLO 3 0 1 1 1 0 0 0 0 1 1 1 1

Text Book

1. Problem Solving with C++ 10th edition by Walter Savitch- Pearson Prentice-Hall
2. Beginning Programming with C++ for Dummies by Stephen R. Davis
3. C++ for Dummies by Stephen R. Davis

Reference Material

Books
[Link]: Principles and Practice using C++ by Bjarne Stroustrup
2.C++ How to Program Deitel & Deitel- Pearson Prentice-Hall
Web Tutorials
 [Link]
 [Link]
 [Link]

Online C++ Compilers


 [Link]
 [Link]
 [Link]
 [Link]
Instructor

Name Sher Muhammad Daudpota


Designation Professor of Computer Science
Department Computer Science
Last Update August 15, 2025

Computer Science/Software Engineering


Program Learning Outcomes

GA: Graduate Attributes

GA1 Computing Knowledge: An ability to apply knowledge of mathematics, science,


computing fundamentals and computing specialization to the solution of complex computing
problems.

GA2 Problem Analysis: An ability to identify, formulate, research literature, and analyze
complex computing problems reaching substantiated conclusions using first principles of
mathematics, natural sciences and computing sciences.

GA3 Design/Development of Solutions: An ability to design solutions for complex


computing problems and design systems, components or processes that meet specified needs
with appropriate consideration for public health and safety, cultural, societal, and
environmental considerations.

GA4 Investigation: An ability to investigate complex computing problems in a methodical


way including literature survey, design and conduct of experiments, analysis and
interpretation of experimental data, and synthesis of information to derive valid conclusions.

GA5 Modern Tool Usage: An ability to create, select and apply appropriate techniques,
resources, and modern IT tools, including prediction and modeling, to complex computing
activities, with an understanding of the limitations.

GA6 The Computer Scientist and Society: An ability to apply reasoning informed by
contextual knowledge to assess societal, health, safety, legal and cultural issues and the
consequent responsibilities relevant to professional computing practice and solution to
complex computing problems.

GA7 Environment and Sustainability: An ability to understand the impact of professional


computing solutions in societal and environmental contexts and demonstrate knowledge of
and need for sustainable development.

GA8 Ethics: Apply ethical principles and commit to professional ethics and responsibilities
and norms of computing practice.
GA9 Individual and Team Work: An ability to work effectively, as an individual or in a
team, on multifaceted and /or multidisciplinary settings.

GA10 Communication: An ability to communicate effectively, orally as well as in writing,


on complex computing activities with the computing community and with society at large,
such as being able to comprehend and write effective reports and design documentation,
make effective presentations, and give and receive clear instructions.

GA11 Project Management: An ability to demonstrate management skills and apply


computing principles to one’s own work, as a member and/or leader in a team, to manage
projects in a multidisciplinary environment.

GA12 Lifelong Learning: An ability to recognize importance of, and pursue lifelong
learning in the broader context of innovation and technological developments

You might also like