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

CS F111 Computer Programming I Sem 2024-25 HO

Uploaded by

jampaphotos4
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
66 views5 pages

CS F111 Computer Programming I Sem 2024-25 HO

Uploaded by

jampaphotos4
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

BITS PILANI, DUBAI CAMPUS

ACADEMIC – UNDERGRADUATE STUDIES DIVISION


FIRST SEMESTER 2024 – 2025
Course Handout (Part – II)
Date: 26-08-2024
In addition to Part I (General Handout for all courses appended to the Time Table) this portion further specific
details regarding the course.

Course No. : CS F111 (3 1 4)


Course Title : Computer Programming
Instructor-in-charge: Dr. Tojo Mathew
Instructors : Dr. Tojo Mathew, Ms. Sapna Sadhwani, Dr. Shalaka S. Mahadik

Objective:
The primary goals of the course are to introduce:
o Basic representation of data and how to process data using the representation inside a computer.
o Techniques for specifying data, operations on data, and problem-solving using a programming
language.
o Systematic techniques and approaches for constructing programs.

Scope:
The course covers the following topics: Basic Model of a Computer; Problem Solving – Basic Computing
Steps and Flow Charting (Assignment, Sequencing, Conditionals, Iteration). Programming Constructs –
Expressions, Statements, Conditionals, Iterators/Loops, Functions/Procedures; Data Types – Primitive Types,
Tuples, Choices (Unions or Enumerations), Lists/Arrays, Pointers and Dynamically Allocated Data, Input
output and Files.
While the topics are taught using a specific language, the intent of the course is to teach a programming
methodology, and not a programming language. There is also a laboratory component that involves
development and testing of iterative and procedural programs using bounded and unbounded iterations,
function composition, random access lists, sequential access lists, dynamically allocated lists, and file access.

Study Materials:
Text Book [TB]:
TB1. J.R. Hanly and E.B. Koffman, Problem Solving and Program Design in C. Seventh Edition, Pearson
Education, 2013.

Reference Books [RB]:


RB1: Patt, Yale. Introduction to Computing Systems: From bits & gates to C &beyond (2/e). McGraw Hill
Education, 2017. The authors take a bottom-up approach to introduce computers and computing.
RB2: Forouzan, B.A. and Richard F. Gilberg. Computer science A structured programming approach using C
(3/e). Cengage Learning, 2007. The book gives a fairly comprehensive overview of C, with several example
programs.
RB3: Gottfried, B.S. and Jitender Chhabra. Programming with C (Schaum's Outlines Series, 3/e). McGraw Hill
Education, 2017. Another beginner’s book on C programming, with lots of drill exercises and programs.
RB4: Kernighan, B.W and Dennis Ritchie. The C Programming Language (2/e). Pearson
Education India, 2015. Considered the ultimate treatise on C, it conveys the philosophy and practice
of C very tersely, but is pitched at an advanced beginner level.
RB5: Das, S. Unix: Concepts and Applications (4/e). McGraw Hill Education, 2017. Provides a great
introduction to using Unix commands.
RB6: Das, Sumitabha. Computer Fundamentals and C Programming. New Delhi, India: McGraw Hill
Education. (2018)
Course Pre/Co-requisite (if any) & Catalogue / Bulletin Description:
Given in the Bulletin 2024 – 2025

Course Plan/Schedule
Modules

MODULE THEME LEARNING OBJECTIVES


I Basic data, data types, and To understand how to define, represent, and process
data representation basic data.
II Analyzing, designing, and To diagrammatically understand and visualize an
managing a process or algorithm using boxes of various kinds. This
program for any given representation gives a step byep insight to a solution of
problem. a given problem.
III Basic Problem Solving – To understand constructs of structured programming
Structured Programming including conditionals and iterations
IV Advanced Problem To understand how to structure complex data and how
Solving – Program to systematically structure large programs
Structuring and Structured
Data
V User Defined Data To understand how users can define the structure and
and Dynamic Data operations of new forms of data using known forms
VI Advanced Topics – File To understand recursive programming and to
I/O and Recursion understand how to access files and contents of files

Lecture Schedule
Lec. Learning Reference
Topics to be covered Learning
# Objectives Outcomes to
Text
Introduction to
Introduction to the Programming; need for
course programming; overview of Students can write
computers and computing; simple C programs,
01 T1: 1.1-1.3
compile and execute

Internal representation of them in a Unix


Representation of data; IEEE floating point environment
numbers inside the representation of numbers
02-05 R1
computer
How to express a problem
Solving problems using flowcharts, using
using flowcharts prime number problem as
T1: 2.4;
an example
06-09 Class notes
Overview of the C A programming example –
10-12 programming prime numbers Notes
language
Simple data storage Data Types; variable Students can evaluate a
and manipulation names; sizes, constants complex arithmetic
and declarations expression; also specify
13-15 T1: 2.1-2.2
the exact internal data
representation.
Statements – if… else, if… Given a problem that’s
else… if, switch iterative or conditional in
Loops – while; do… nature, students would be
T1: 4.1-4.3,
while; for; break and able to use the loop
16-22 Flow of control
continue constructs / if-else 4.7-4.8, 5.1-
construct appropriately. 5.2, 5.4-5.8
Functions and program
Structure; return T1: 3.1, 3.4-
types; scope
23-29 Modularity and 3.5, 6.1-6.4,
program structure rules; header files
10.1-10.
Recursion The Given a complex
C problem, statement,
Preprocessor students will be able to
Pointers and function logically break down
arguments; call by value; into simpler modules
call by reference; pointer involving pointers and
Pointers and Arrays arrays, and write a T1: 6.1, 8.1-
arithmetic; arrays of
30-36 pointers; string modular program using 8.5, 9.1-9.5
manipulation
Multidimensional arrays; functions.
Multi-dimensional pointers vs. T1: 8.7-8.8,
arrays multidimensional Arrays;
37-44 13.7
Command
Line Arguments
Structures and unions;
45-50 User-defined data enumerated data types; T1: 14.3-14.4
types type
definitions
Standard input and output Students will be able to
Input and Output functions; formatted input create user-defined data
and output; File types pertaining to a
51-52 given problem, create T1: 2.3
handling
and manipulate data
Dynamic memory Dynamic structures using
53-54 and simple data memor dynamic memory T1: 12.1-12.2
structures in C y management; linked lists management, and handle Notes
text files.
55-56 Modularity and Divide and Conquer – T1:10.3 – 10.4
program structure Design using Recursion;
Recursive procedures;
Recursion vs. Iteration

Lab Practical: The following topics are covered in the lab.

Sessions
Sl# Topics (2 classes per Venue
week)
1 Orientation, Introduction to working with Unix (Linux) 1
2 Introduction to working with Unix (Linux) cont 1
3 Input and output statement in C 1
4 Using different data types and operators in C 1
5 Different programming structures (selective, iterative) 1
6 Using arrays in C (Single, Multi-dimensional) 1
7 String processing 1 CP Lab
8 Structures and Unions 1 Room No.
9 Functions 1 333/336
10 Pointers 1
11 File handling 1
12 Dynamic memory allocation and linked list 1
13 Practice session 1

Course Learning Outcomes (CLOs)


Upon successful completion of this course, students should be able to:
• CLO1 Understand the need of programming in different domains
• CLO2 Identify working of arrays, structure, union and functions
• CLO3 Identify working of different data structures and their use in Programming
• CLO4 Work with advanced programming concepts
• CLO5 Familiarize with Programming / Application Design concepts

Evaluation Scheme: [Legends: OB - Open Book, CB - Closed Book, TBA – To Be Announced]

Sl. Component OB/ Duration Weightage Marks Date & Time


No. CB
1. Quiz CB 20 Minutes 10% 20 07.10.2024, M6

2. Continuous Lab
Evaluation & demo 1 OB* During 5% 10 Continuous
(before mid sem) Lab hours

3. Mid-semester Test CB 90 Minutes 30% 60 24.10.2024(Thu),


FN
4. Continuous Lab
Evaluation & demo 2 OB* During 5% 10 Continuous
(after mid sem) Lab hours

4. End semester Lab OB* 90 Minutes 15% 30 TBA


exam

5. Comprehensive Exam CB 3 hours 35% 70 06.01.2025(Mon),


FN
Only prescribed text book(s) and hand-written notes are permitted

Mapping of CLOs, PLOs, and CECs

Evaluation Components (ECs)


CLOs PLOs
EC1 EC2 EC3 EC4 EC5
CLO1 1,2,4 ✓ ✓ ✓ ✓ ✓
CLO2 1, 2, 3, 4 ✓ ✓ ✓ ✓ ✓
CLO3 1, 2,3, 4 ✓ ✓ ✓ ✓
CLO4 1, 2,3, 4 ✓ ✓ ✓
CLO5 1, 3, 4, 5,8 ✓

Mid-Semester grading

Mid-semester grading will be displayed after evaluation components: Midsem (30%), Quiz (10%) and Lab
evaluation & demo (5%) are completed.
Note: A student will be likely to get “NC”, if he / she
⮚ Doesn’t appear / appear for the sake of appearing for the evaluation components / scoring zero in pre-
compre total.
⮚ Scoring zero in the lab component / Abstaining from lab classes throughout.

Make up and attendance policy

Make-ups are not given as a routine. It is solely dependent upon the genuineness of the circumstances under
which a student fails to appear in a scheduled evaluation component. In such circumstances, prior permission
should be obtained from the Instructor-in-Charge (I/C). The decision of the course committee in the above
matter will be final. Strictly no makeup for Quiz.
Attendance: Every student is expected to be responsible for regularity of his/her attendance in class rooms
and laboratories, to appear in scheduled tests and examinations and fulfill all other tasks assigned to him/her
in this course. A student should have a minimum of 60% of attendance in a course to be eligible to appear
for the Comprehensive Examination in the course. For the students under the purview of Academic Counseling
Board (ACB), the Board shall prescribe the minimum attendance requirement on a case-to-case basis.
Attendance in the course will be a deciding factor in judging the seriousness of a student which may be directly
/ indirectly related to grading.

Minimum performance requirement for clearing the course


A student should obtain 40% of the median marks of the class to clear the course. If any student gets the marks
lower than the prescribed standard mentioned above, he/she may be awarded NC.

Chamber Consultation hour: See the course instructor table below.


Notices: All notices concerning the course will be displayed on the respective Notice Boards and Google class
room. Optionally, if there is a need, email to your BITS mail would be used on short notice and therefore you
should activate your BITS mail. All official communications will be sent to your BITS email only.

Course instructors contact information:


Chamber Consultation Chamber No. &
Instructor Name Email Id
Hour (CCH) Contact No.
Dr. Tojo Mathew [email protected] Tuesday, Hour 8 234,
pilani.ac.in (1.55 PM – 2.45) 042753700
(Ext. 317)
[email protected] Tuesday, Hour 2 232,
Ms. Sapna Sadhwani pilani.ac.in 042753700
(Ext. 157)
Dr. Shalaka S. Mahadik csadjunct.shalaka@dubai. Wednesday, Hour 6 253
bits-pilani.ac.in

Dr. Tojo Mathew


Instructor In-Charge
CS F111 (Computer Programming)

You might also like