BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, PILANI PILANI CAMPUS Instruction Division

Similar documents
BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division. SECOND SEMESTER Course Handout Part II

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division. SECOND SEMESTER Course Handout Part II

DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY LUCKNOW. Evaluation Scheme & Syllabus. For. B.Tech. First Year (Programming for Problem Solving)

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division

Syllabus. ICS103: Computer Programming in C 2017 / 2018 First Semester (Term 171) INSTRUCTOR Office Phone Address Office Hours

Hrs Hrs Hrs Hrs Hrs Marks Marks Marks Marks Marks

G. PULLAIAH COLLEGE OF ENGINEERING AND TECHNOLOGY Pasupula, Nandikotkur Road, Kurnool

CS 241 Data Organization using C

Kadi Sarva Vishwavidyalaya, Gandhinagar

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus

Gujarat University M. Sc. Computer Science [S. F.] Semester-1 Syllabus Gujarat Arts & Science College, Ahmedabad.

CS Computer Science I

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics

Module Syllabus. PHILADELPHIA UNIVERSITY Faculty: Information Technology Department: Applied Computer Science

Class 9 Saturday, Feb 14

AE Computer Programming for Aerospace Engineers

Computer Science Technology Department

IT-2670: C/C++ PROGRAMMING LANGUAGE

Cleveland State University

CS 241 Data Organization. August 21, 2018

PESIT-BSC Department of Science & Humanities

COURSE PLAN COMPUTER INFORMATION TECHNOLOGY

ITT Technical Institute. ET2560T Introduction to C Programming Onsite and Online Course SYLLABUS

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

San José State University Department of Computer Science CS-144, Advanced C++ Programming, Section 1, Fall 2017

Advanced Programming Concepts. CIS 15 : Spring 2007

Deccan Education Society s FERGUSSON COLLEGE, PUNE (AUTONOMOUS) SYLLABUS UNDER AUTONOMY. FIRST YEAR B.Sc. COMPUTER SCIENCE SEMESTER I

Course: Honors AP Computer Science Instructor: Mr. Jason A. Townsend

CNG 140 C Programming. Syllabus. Course Info Fall Semester. Catalog Description

JEFFERSON COLLEGE COURSE SYLLABUS CIS236 SQL AND DATABASE DESIGN. 3 Credit Hours. Revised by: Chris DeGeare March 11, 2013

Updated: 2/14/2017 Page 1 of 6

SULTAN QABOOS UNIVERSITY COURSE OUTLINE PROGRAM: BSc. in Computer Science. Laboratory (Practical) Field or Work Placement

CSCE 206: Structured Programming in C

CS120 Computer Science I. Instructor: Jia Song

C Programming for Engineers Introduction

MPATE-GE 2618: C Programming for Music Technology. Syllabus

Computer Science (Informática)

CSC 111 Introduction to Computer Science (Section C)

EECE.2160: ECE Application Programming Spring 2017

COURSE SYLLABUS AND INSTRUCTOR PLAN

Course Syllabus - CNT 4703 Design and Implementation of Computer Communication Networks Fall 2011

SAULT COLLEGE OF APPLIED ARTS AND TECHNOLOGY SAULT STE. MARIE, ONTARIO. Sault College COURSE OUTLINE CODE NO. : CSD100 SEMESTER: 1

CMPE 152 Compiler Design

Programming for Problem Solving 105A L T P Credit Major Minor Total Time

EECE.2160: ECE Application Programming Spring 2019

Syllabus CSCI 405 Operating Systems Fall 2018

CIS* Programming

Programming 1. Outline (111) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview.

CS 375 UNIX System Programming Spring 2014 Syllabus

CS 200, Section 1, Programming I, Fall 2017 College of Arts & Sciences Syllabus

TEACHING & ASSESSMENT (T & A) PLAN College of Economics Management and Information Systems Department of Information Systems

De La Salle University College of Computer Studies. Course Syllabus

Compilers for Modern Architectures Course Syllabus, Spring 2015

CS 211 Programming I for Engineers

Langara College Spring archived

CS 0449 Intro to Systems Software Fall Term: 2181

ECE 467 Section 201 Network Implementation Laboratory

Compilers. Computer Science 431

Computer Science Department

Langara College Spring archived

ITT Technical Institute. SD2720 Advanced Software Development Using Java Onsite and Online Course SYLLABUS

You must pass the final exam to pass the course.

Course Title: C Programming Full Marks: Course no: CSC110 Pass Marks: Nature of course: Theory + Lab Credit hours: 3

UNIVERSITY OF JAMMU, JAMMU. (Semester System)

Oklahoma State University Institute of Technology Face-to-Face Common Syllabus Fall 2017

C Programming. Course Outline. C Programming. Code: MBD101. Duration: 10 Hours. Prerequisites:

CS F 303 COMPUTER NETWORKS JANUARY 11, 2017

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus

Syllabus COSC-051-x - Computer Science I Fall Office Hours: Daily hours will be entered on Course calendar (or by appointment)

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus

HARFORD COMMUNITY COLLEGE 401 Thomas Run Road Bel Air, MD Course Outline Routing and Switching Essentials [CISCO 2] ISS 112

San José State University Department of Computer Science CS-144, Advanced C++ Programming, Section 1, Spring 2018


TEACHING & ASSESSMENT PLAN

Web Programming Spring 2010

ESET 349 Microcontroller Architecture, Fall 2018

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS ADVANCED DATABASE MANAGEMENT SYSTEMS CSIT 2550

San Jose State University - Department of Computer Science

San José State University Computer Science Department CS49J, Section 3, Programming in Java, Fall 2015

INFS 2150 (Section A) Fall 2018

ITT Technical Institute. SD1420 Introduction to Java Programming Onsite and Online Course SYLLABUS

CMPE 152 Compiler Design

Tutorials. Tutorial every Friday at 11:30 AM in Toldo 204 * discuss the next lab assignment

CIS*1500 Introduction to Programming

BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS COSC 1320: INTRODUCTION TO C++ PROGRAMMING COMPUTER TECHNOLOGY & OFFICE ADMINISTRATION DEPARTMENT

The University of Jordan. Accreditation & Quality Assurance Center. COURSE Syllabus

S Y B Voc Software Development Syllabus

Logic and Discrete Mathematics

CMPE012 Computer Engineering 12 (and Lab) Computing Systems and Assembly Language Programming. Summer 2009

CSE111 Introduction to Computer Applications

CS313T ADVANCED PROGRAMMING LANGUAGE

TREASURY BANKING OPERATIONS Certification Program

PUNJAB COLLEGE OF TECHNICAL EDUCATION

Compulsory course in Computer Science

Introduction to Computer Systems

Textbook(s) and other required material: Raghu Ramakrishnan & Johannes Gehrke, Database Management Systems, Third edition, McGraw Hill, 2003.

EE3315 Internet Technology EE3315 Internet Technology Overview Slide 1

Central Washington University Department of Computer Science Course Syllabus

Syllabus. Course Number: CS 361 Course Title: Control Structures. Course Description: Prerequisite Courses: Course Overview

CPSC 2380 Data Structures and Algorithms

Transcription:

Second Semester 2017-2018 Course Handout (Part II) January08, 2017 In addition to part I (General Handout for all courses appended to the time table) this portion gives further specific details regarding the course. Course No. : CS F111 Course Title : COMPUTER PROGRAMMING Instructor-in-charge : Dr. Manoj Kannan Lecture Instructors : Dr. Sundaresan Raman(sundaresan.raman@pilani.bits- Lab Instructors : Dr. Sundaresan Raman (sundaresan.raman@pilani.bits- pilani.ac.in) pilani.ac.in) Dr. Manoj Kannan(manojkannan@pilani.bits-pilani.ac.in) Dr. Lavika Goel(lavika.goel@pilani.bits-pilani.ac.in) Dr. Mayuri Digalwar(mayuri@pilani.bits-pilani.ac.in) Ms. Aryav Yadav (p20170026@pilani.bits-pilani.ac.in) Ms. Prerna Kaushik (p2013192@pilani.bits-pilani.ac.in) Mr. Harry Johnson (h20170120@pilani.bits-pilani.ac.in) Mr. G. Sasidhar (h20170122@pilani.bits-pilani.ac.in) 1. Course Description: The primary goals of the course are to introduce: Basic representation of data and how to process data using the representation inside a computer. Techniques for specifying data, operations on data, and problem solving using C programming language. Systematic techniques and approaches for constructing programs. 2. Scope of the Course: 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.

3. Learning Outcomes: Given the requirements for any computational problem, or given an algorithm, the students will be able to write equivalent program in high-level language such as C. Given a problem that s iterative in nature, students would be able to use the loop constructs appropriately, using nested loops if required. Given the memory requirements, students will be able to design the appropriate data structures (static, dynamic memory allocation) for the given problem. Given a complex problem, students will be able to logically break down into simpler functions and implement them in C. Given any type of data, students will be able to predict their internal representation and thus reason particular outputs for a given input. Given the requirements, students will be able to write programs to create files, update files and read dataa from files. 4. Textbook: T1: Hanly, J.R. and E.B. Koffman. Problem Solving and Program Design in C(7/e). Pearson Education, 2013. 5. Reference Books: R1: 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. R2: 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. R3: 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 ofdrill exercisesand programs. R4: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 beginnger level. R5:Das, S. Unix: Concepts and Applications (4/e). McGraw Hill Education, 2017. Provides a great introduction to using Unix commands.

6. Lecture Plan: Lec. # 01 02-03 04-06 Learning Objectives Introduction to the course Introduction to working with Unix (Linux) Representation of numbers inside the computer Topics to be covered Introduction to Programming; need for programming; overview of computers and computing; learningoutcomes Compilation and execution of a program, other useful Unix commands Internal representation of data; IEEE floating point representation of numbers Learning Outcomes Students can write simple C programs, compile and execute them in a Unix environment Reference to Text T1: 1.1-1.3 R5 R1 07 Solving problems using flowcharts How to express a problem using flowcharts, using prime number problem as an example T1: 2.4; Class notes 08-09 Overview of the C programming language A programming example prime numbers Notes 10-11 Lec. # Simple data storage and manipulation Learning Objectives Data Types; variable names; sizes, constants and declarations Topics to be covered Students can evaluate a complex arithmetic expression; also specify the exact internal dataa representation. Learning Outcomes T1: 2.1-2.2 Reference to Text

12-14 Flow of control Statements if else, if else if, switch Loops while; do while; for; break and continue Given a problem that s iterative or conditional in nature, students would be able to use the loop constructs / if-else construct appropriately. T1: 4.1-4.3, 4.7-4.8, 5.1-5.2, 5.4-5.8 15-19 20-24 25-28 29-33 34 Lec. # Modularity and program structure Pointers and Arrays Multidimensional arrays User-defined data types Input and Output Learning Objectives Functions and program Structure; return types; scope rules; header files Recursion The C Preprocessor Pointers and function arguments; calll by value; call by reference; pointer arithmetic; arrays of pointers; string manipulation Multidimensional arrays; ays; pointers vs. multidimensional Arrays; rays; Command Line Arguments Structures and unions; enumerated data types; type definitions Standard input and output functions; formatted input and output; File handling Topics to be covered Given a complex problem statement, studentss will be able to logically break down into simpler modules involving pointers and arrays, and write a modular program using functions. Students will be able to create user-defined data types pertaining to a given problem, create and manipulate data structures using dynamic memory management, and handle text files. Learning Outcomes T1: 3.1, 3.4-3.5, 6.1-6.4, 10.1-10.4 T1: 6.1, 8.1-8.5, 9.1-9.5 T1: 8.7-8.8, 13.7 T1: 14.3-14.4 T1: 2.3 Reference to Text

35-40 Dynamic memory and simple data structures in C Dynamic memory management; linked lists T1: 12.1-12.2 Notes 7. Evaluation Scheme: # Evaluation Component Marks Date and Time 1 Mid-semester Test 35 (17.5%) 9/3 4:00-5:30 PM Remarks Closed-book 2 Comprehensive Examination 3 Online Programming Test 75 (37.5%) 11/5 AN One section will be openbook 25 (12.5%) 22-Apr-2018 Open-book; 1½ hours 4 Quizzes/Assignments 35 (17.5%) To be announced Some may be given online 5 Practical session evaluation 30 (15%) During the weekly practical session Each practical session will be evaluated out of 3 marks 8. Practical Sessions: Supervised practical sessions will be held every week wherein the students will practice writing, executing and debugging C programs in a Unix environment. Students are expected to work in their respective Linux accounts created on the Prithvi server (172.24.16.31). Every student is expected to maintain a laboratory record notebook in which the programs are documented and brought to the lab every week. Each lab session will be evaluated for 3 marks 1 mark for attendance and punctuality, 1 mark for active participation, and 1 mark for lab record completion. 9. Attendance Policy: Attendance shall be recorded in lectures and practical classes. Poor attendance is likely to: Have your user privileges on Prithvi server suspended; Have you lose an opportunity to take part in assignments and quizzes; Make you miss out on great classroom experience.

10. Makeup Policy: For a foreseen absence, make-up request should be made personally by meeting the Instructor-in-Charge. Reasonss for unanticipated absence that qualify one for make-up include medical or similar personal emergencies only. In such cases, the Instructor-inmake-ups for Charge must be informed either by email or by telephone. Usually, regular laboratory sessions and assessments held therein are not awarded. The decision by the Instructor-in-Charge regarding granting makeups shall be final. 11. Grading Policy: Award of grades would be guided in general by the histogram of marks. Decision for borderline cases would be based on the student s attendance in lectures and laboratory sessions, and instructors overall assessment of the individual s sincerity andendeavour. If a student does not give sufficient opportunity for being assessed, either by missing a component entirely or by not applying oneself to the task seriously, he/she may be awarded NC report. 12. Chamber Consultation Hour: Dr. Manoj Kannan Fridays 4:30 to 5:30 PM in Rm. 3270; Phone: 01596 515855 Dr. Sundaresan Raman (To be announced) inrm. 6121-O; Phone: 01596 515684 To contact the practical class instructors for consultation, you may send them an email. 13. Announcements and Notices: All announcements will be done in the classroom, and may be followed up with an email. For sharing course material, either Nalanda (nalanda.bits-pilani.ac.in) or Google Drive may be used. Importantt notices, such as seating arrangement for tests and exams, will also be displayed on notice boards. Instructor-in-Charge CS F111