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

Similar documents
Syllabus. College for Computer & Information Sciences 3333 Regis Boulevard, Denver, CO regis.edu

Syllabus Course Number: CS 412 Course Title: Web and Database Programming

Syllabus. Course Title: Cyber Forensics Course Number: CIT 435. Course Description: Prerequisite Courses: Course Overview

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

Note that your facilitator may provide additional required readings.

CIS 120. Introduction to Programming

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

Survey of Programming Languages Dr. R. M. Siegfried 407 Science (516) (not for homework submission)

CS/SE 153 Concepts of Compiler Design

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

CMPE 152 Compiler Design

COP 1170 Introduction to Computer Programming using Visual Basic

CMPE 152 Compiler Design

CENTRAL TEXAS COLLEGE COSC 1315 INTRODUCTION TO COMPUTER PROGRAMMING. Semester Hours Credit: 3 INSTRUCTOR: OFFICE HOURS:

file:///h:/de/course Production/DE Production/comp_1010_ol/_syllabus...

Pellissippi State Community College Master Syllabus ACCESSIBLE WEB DESIGN AND COMPLIANCE WEB 2401

San José State University Department of Computer Science CS151, Section 04 Object Oriented Design Spring 2018

INST Database Design and Modeling - Section 0101 Spring Tentative Syllabus

Spring 2018 El Camino College E. Ambrosio. Course Syllabus

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

CMPE 152 Compiler Design

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS 3D MODELING & ANIMATION VPT 2165

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

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS HPC INTERNETWORKING & GRID TECHNOLOGY HPC 1020

San José State University Department of Computer Science CS 166 / SE 166, Information Security, Section 4, spring, 2017

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

TITLE OF COURSE SYLLABUS, SEMESTER, YEAR

Cowley College & Area Vocational Technical School

CS 241 Data Organization using C

Computer Science Technology Department

CS Computer Science I

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

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

CASPER COLLEGE COURSE SYLLABUS MSFT 1600 Managing Microsoft Exchange Server 2003 Semester/Year: Fall 2007

AP Computer Science A Syllabus

CS/SE 153 Concepts of Compiler Design

San José State University Department of Computer Science CS166, Information Security, Section 1, Fall, 2018

You must pass the final exam to pass the course.

Overview : Table Of Content :

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

The Linux Command Line: A Complete Introduction, 1 st ed., by William E. Shotts, Jr., No Starch Press, 2012.

San José State University College of Science/Department of Computer Science CS 152, Programming Language Paradigms, Section 03/04, Fall, 2018

Important Notes: For this course you must check the Regis Bookstore: for the most current online course material information.

Hrs Hrs Hrs Hrs Hrs Marks Marks Marks Marks Marks

CSc 2310 Principles of Programming (Java) Jyoti Islam

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

ITT Technical Institute. ET4560T C++ Programming Onsite Course SYLLABUS

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017

MWF 9:00-9:50AM & 12:00-12:50PM (ET)

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS CIW JAVASCRIPT FUNDAMENTALS CERTIFICATION WEB 2391

COP 1220 Introduction to Programming in C++ Course Justification

Introduction To Data Processing COMP 153 Business Administration Program/Administrative Studies. Course Outline

CSCO 120 CCNA Internetworking Fundamentals Spring 2018

DEPARTMENT OF COMPUTER AND MATHEMATICAL SCIENCES UNIVERSITI TEKNOLOGI MARA CAWANGAN PULAU PINANG

Updated: 2/14/2017 Page 1 of 6

GREENVILLE TECHNICAL COLLEGE. Business and Technology Division Computer Technology Course Syllabus Advanced Cisco Router Configuration IST 203

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS ROUTING/SWITCH CONFIGURATION CSIT 2750

San Jose State University - Department of Computer Science

San José State University College of Science/Department of Computer Science CS152, Programming Paradigms, Sections 3 & 4, Fall Semester, 2016

The University of Jordan

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

CMN192B OFFICE: An Overview of Access and PowerPoint

IT-2670: C/C++ PROGRAMMING LANGUAGE

IS 331-Fall 2017 Database Design, Management and Applications

AP Computer Science A

CIS* Programming

CMPE/SE 135 Object-Oriented Analysis and Design

The University of Aizu School of Computer Science and Engineering Introduction to Programming. Course Syllabus (Special Track for Foreign Students)

In this course, you need to use Pearson etext. Go to "Pearson etext and Video Notes".

JOHNSON COUNTY COMMUNITY COLLEGE COURSE SYLLABUS WEB CRN Web Scripting: JavaScript I

CoSci 440 SYLLABUS Programming in C++ INSTRUCTOR Mari Rettke cell SECTION : and 13345

COURSE SYLLABUS Fall SAHE&T CSC 101 Introduction to Computers (CRN 3070) MAC Department Course No. Course Title

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

ISATI 231: Windows Client (4 credits) Spring 2018 Mon, Tue, Wed, Thu, 13:10-14:40, MTB 105

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS LINUX SYSTEM ADMINISTRATION CSIT 2411

San José State University College of Science/Department of Computer Science CS152, Programming Paradigms, Sections 1 & 2, Fall Semester, 2017

CHAIR Jr, r7~. cou EGE FACULTY CHAIR (if \G,Jl ~ ~k amica~ pc{ 2.-0 I ; <-0 l "?J Approved,G. 'S u,\? Approved. Approved

CPS352 Database Systems Syllabus Fall 2012

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

ITT Technical Institute. TB143 Introduction to Personal Computers Onsite and Online Course SYLLABUS

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

San José State University Department of Computer Science CS-174, Server-side Web Programming, Section 2, Spring 2018

GET 433 Course Syllabus Spring 2017

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department

Langara College Spring archived

CSC 210 COMPUTER SCIENCE II

COURSE SYLLABUS BMIS 326 INTRODUCTION TO ORACLE

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS WEB DESIGN FOR MOBILE DEVICES WEB Laboratory Hours: 0.0 Date Revised: Fall 2011

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

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS MICROSOFT NETWORKING I - WORKSTATION CST 2735

Syllabus Honors Java Programming 1 & 2

San José State University College of Science/Department of Computer Science CS152, Programming Paradigms, Sections 1 & 2 Spring Semester, 2018

IS Spring 2018 Database Design, Management and Applications

EECE.2160: ECE Application Programming Spring 2017

CPS352 - DATABASE SYSTEMS. Professor: Russell C. Bjork Spring semester, Office: KOSC 242 x4377

Course materials Reges, Stuart, and Stepp, Martin. Building Java Programs: A Back to Basics Approach. 2d ed. (Boston: Addison-Wesley, 2011).

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

Curriculum Map Grade(s): Subject: AP Computer Science

COWLEY COLLEGE & Area Vocational Technical School

Mathematics/Science Department Kirkwood Community College. Course Syllabus. Computer Science CSC142 1/10

Transcription:

Course Number: CS 361 Course Title: Control Structures Course Description: Syllabus CS 361. CONTROL STRUCTURES (3). Discusses basic concepts of computer organization. Develops a precise and logical methodology in reducing complex and unformatted data to algorithmic format. Introduces the concepts and methodologies of structured programming and design. Demonstrates the uses, abuses, and best practices of control structures. Prerequisite Courses: None Although there are no official pre-requisites for this course, undergraduate students majoring in CS/CIS/CN who are new to programming will be expected to take CS208 (Computer Science Fundamentals) before CS361, and should: Know what software is and have used some form of commercial software Be familiar with basic hardware components of a computer (CS208) Understand the difference between low level and high level programming languages (CS208) Have been introduced to the basic structure of C++ programs (CS208) Be able to compile and run a simple C++ program (CS208) Have access to and experience using the Internet (e-mail and a web browser). Have sufficient time to devote at least 20 hours per week to this course. Course Overview CS361 is an introductory computer-programming course in which the control structure aspects of programming languages are taught. The control structures covered in this course form the basis of virtually all structured and object-oriented programming languages. However, the CS361 course will be taught using structured C++, and object-oriented programming will not be covered. In this course, the student is introduced to console application programs that use constant and variables of primitive data types, input/output processing, sequential, selection, and iterative control structures, and functions for modular programming. The student is also introduced to the fundamentals of software engineering methodology, including algorithm creation, top down design, and structured programming. College for Computer & Information Sciences 3333 Regis Boulevard, Denver, CO 80221 303-964-6884 regis.edu 2015 Regis University Revised: 5/27/2015 Page 1 of 8

Ultimately, programming is a skill that requires the ability to put designs into practice. The only way to succeed is to practice this skill. Note that if you are new to programming, you may require a significant amount of time each week to complete the programming assignments. If you are not willing or able to spend the necessary time, please reconsider whether this is the correct time to attend this class. Course Outcomes: Upon completion of this course, students should be able to: 1. Explain the importance of algorithms in the problem-solving process and create algorithms for solving simple problems. 2. Use pseudo-code, flowcharting, or a high-level programming language to implement algorithms for solving small business and scientific problems. 3. Discuss the representation and usage of primitive data types. 4. Design, implement, test, and debug programs that use each of the following fundamental programming constructs: basic computation, simple input/output, standard sequential, conditional, and iterative control structures, and functions. Choose appropriate constructs for each programming task. 5. Apply structured (functional) decomposition to break a program into smaller pieces, and to modify and expand programs. 6. Compare and contrast parameter passing by value and by reference, and describe the mechanics of each. 7. Describe the concept of recursion and explain its appropriateness to certain problems. Compare and contrast iterative and recursive solutions. 8. Identify the base and general cases of a recursively defined problem. Implement, test, and debug a simple recursive function. 9. Describe strategies that are useful in debugging. 10. Analyze and explain the behavior of programs that use the fundamental programming constructs introduced in this course. Use the scientific method and other strategies to identify program deficiencies. Course Materials: Required Text: Malik, D.S. (2015). C++ Programming: From Problem Analysis to Program Design (7th ed.). Boston, MA: Cengage Learning; ISBN-13: 978-1285852744, ISBN-10: 1285852745 Textbook Note: The same textbook will also be used in CS362 -- so save it! And because this book is used in multiple required courses, we do not recommend the "book rental" option. 2015 Regis University CS361 Syllabus Page 2 of 8

Technology Tools: 1. A PC-compatible computer system running Windows. 2. A C++ Compiler -- the preferred compiler is the free Dev-C++ compiler The newest Windows 8-compliant version Dev-C++ (Orwell), can be downloaded from: http://sourceforge.net/projects/orwelldevcpp/files/setup%20releases/ Download the most recent version: Dev-Cpp x.x.x MinGW x.x.x Setup.exe (32-bit version) OR Dev-Cpp x.x.x TDM-GCC x64 x.x.x Setup.exe (64-bit version) WARNING: If you had an older version loaded on your computer from an earlier class, such as the Bloodshed Dev-C++ compiler, you must uninstall it before installing the newer version. Other ANSI standard C++ compilers can be used, but the facilitator will be most familiar with the Dev-C++ compiler listed above, and will most likely use the Dev-C++ compiler to grade your programs. If a student chooses to use another compiler, it is the student's responsibility to obtain any help needed to use the software, and to insure that all assigned programs compile and run correctly on the Dev-C++ compiler. As with most of Regis learning activities, using various software applications to accomplish assignments requires students to exercise a great deal of responsibility for learning how to successfully operate the software applications. This class assumes that you have a working knowledge of a C++ compiler (from CS208 or prior programming experience). There are, however, many quality books on the market that support novice users if you need them. Pre-Assignment: Complete the following two tasks: 1) Students will read the first week's assigned reading in the textbook (listed in the Course Assignments grid on the next page). Be prepared to ask questions on unclear areas and to respond to questions about information in the assigned reading. 2) Written Assignment: An algorithm is defined as: "a precise description of a method for solving a particular problem using operations or actions from a well-understood repertoire. Algorithms are everywhere. When we change the tires on a car, mow the lawn, vacuum a rug, or follow directions to a restaurant, we use an algorithm. A person can solve problems by means of algorithms expressed in English, provided the person understands English. And a 2015 Regis University CS361 Syllabus Page 3 of 8

computer can solve problems by means of algorithms expressed in a programming language, provided that the computer 'understands' that language." [From John Shore, The Sachertorte Algorithm, 1985] Choose any everyday action, such as those listed above, and write a specific, clear, and precise algorithm for it, in English. You may number the different steps, if needed. Online Format: Sign on to WorldClass and become familiar with the course navigation of the Web Curriculum. Complete assignments above. Classroom-based Format: Complete assignments above by the first night of class. 2015 Regis University CS361 Syllabus Page 4 of 8

Course Assignments and Activities: Topics 1 Algorithmic Problem- Solving and Programming Strategies Syntax and Semantics of a High-Level Programming Language Types, Variables, and Assignment Input and Output Arithmetic Expressions and Operators 2 Boolean Expressions and Operators Part I: Sequential Control Part I: void Functions and Parameter Passing by Value 3 Part II: Conditional Control Structures Part II: value-returning Functions 4 Part II: Conditional Control Structures Readings (7 th edition of textbook)* Chapter 1, all Chapter 2, all Chapter 3, pp. 124 136, and 139 middle of 156 (Input/Output) Appendix E, pp. 1324 1325 (Header File Names) of text): Odd exercises 1-33 on pp. 106 114, and odd exercises 1-11 on pp. 174-177 Chapter 4, pp. 187 189, 196 middle of 202 (booleans, relational & logical operators) Chapter 6, pp. 346 350 (pre-defined functions), pp. 376 384 (void functions/value parameters) Appendix F, pp. 1328 top of 1333 (header files) Optional Exercise (answer in back of text): Exercises 3 and 5 on pp. 244 245 and exercises 3 and 23 on pp. 437 and 444 Chapter 4, pp. 189 196, 203 205 (simple if/else) Chapter 6, pp. 351 middle of 358, bottom of 360 362, 369 middle 374 (value-returning functions & program example) of text): Odd exercises #1 and 7 13 on pp. 243 247, and odd exercises #1 a-h and 7 11 on pp. 436 440 Chapter 4, pp. bottom of 205 216 (nested and extended ifs), bottom of 220 middle of 234 (conditional operator and switch), and bottom of 236 243 (example and review) of text): Odd exercises 15 33 on pp. 247 254 Activities Assignments** and Associated Points 10% for entire course Prog Assn 1 4% of 52% NOTE: Together, all 7 programming assns are worth 52% of the course grade. Prog Assn 2 8% of 52% Prog Assn 3 15% of 52% Prog Assn 4 15% of 52% Midterm Exam 19% 2015 Regis University CS361 Syllabus Page 5 of 8

5 Part III: Iterative Control Structures 6 Part III: Iterative Control Structures (nested) Part III: Parameter Passing by Reference 7 Part II: Functions and Parameter Passing by Reference Recursion Chapter 5, pp. 264 284 (while loops, skip Case 4) 290 313 (more while, for and do-while loops) Chapter 6, pp. 358 middle of 368, middle 374 middle 384 (prototypes and examples) of text): Odd exercises 1 43 on pp. 324 337, odd exercises 13 19 on pp. 440 442 Chapter 5, pp. 314 324 (nested loops, debugging, review) Chapter 6, pp. 384 middle of 397 (reference parameters) of text): Odd exercises 21 and 25 35 on pp. 443 450 Chapter 6, pp. middle of 397 422 (scope, types, default parameters and example), 433 435 (review) Chapter 15, pp. 1024 middle of 1027 and pp. 1031 top 1046 (recursion and review) of text): Exercise #37 on p. 450, and odd exercises 1 15 on pp. 1047 1050 8 End of Chapter Quick Reviews for Chapters 1 6 & 15 Prog Assn 5 14% of 52% Prog Assn 6 22% of 52% Total 100% Prog Assn 7 22% of 52% Final Exam 19% *Alternate Edition Reading Assignments: Alternate reading assignments for the previous edition of the textbook (6 th edition) will be available in your facilitator s syllabus. **Note to Classroom sections only: Exact dates for reading assignments and programming assignments may be one week earlier or later than indicated in the above Course Assignments and Activities grid. Your facilitator's syllabus, handed out the first night of class, will indicate any changes. 2015 Regis University CS361 Syllabus Page 6 of 8

Summary of Assignments and Percentage Weight towards course grade Assignment Value (percent of overall course grade) Programming Assignments (7 assns) Assn 1 4% of 52% Assn 2 8% of 52% Assn 3 15% of 52% Assn 4 15% of 52% Assn 5 14% of 52% Assn 6 22% of 52% Assn 7 22% of 52% Total for all Programming Assignments 52 % Midterm Exam 19 % Final Exam 19 % Participation and First Night Assn 10 % Course Total 100 % Course Policies and Procedures Plagiarism Plagiarism includes submitting code obtained from any person, publication, or from any internet web source. All work submitted in CS361 must be your own. CC&IS Grading Scale Letter Grade Percentage Grade Point A 93 to 100 4.00 A 90 to less than 93 3.67 B+ 87 to less than 90 3.33 B 83 to less than 87 3.00 B 80 to less than 83 2.67 C+ 77 to less than 80 2.33 C 73 to less than 77 2.00 C 70 to less than 73 1.67 D+ 67 to less than 70 1.33 D 63 to less than 67 1.00 D- 60 to less than 63.67 F Less than 60 0 Additional information about grading can be found in the latest edition of the University Catalog, available at http://www.regis.edu/academics/course%20catalog.aspx. 2015 Regis University CS361 Syllabus Page 7 of 8

CC&IS Policies and Procedures Each of the following CC&IS Policies & Procedures is incorporated here by reference. Students are expected to review this information each term, and agree to the policies and procedures as identified here and specified in the latest edition of the University Catalog, available at http://www.regis.edu/academics/course%20catalog.aspx or at the link provided. The CC&IS Academic Integrity Policy. The Student Honor Code and Student Standards of Conduct. Incomplete Grade Policy, Pass / No Pass Grades, Grade Reports. The Information Privacy policy and FERPA. For more information regarding FERPA, visit the U.S. Department of Education. The HIPPA policies for protected health information. The complete Regis University HIPAA Privacy & Security policy can be found here: http://www.regis.edu/about-regis- University/University-Offices-and-Services/Auxiliary-Business/HIPAA.aspx. The Human Subjects Institutional Review Board (IRB) procedures. More information about the IRB and its processes can be found here: http://regis.edu/academics/academic- Grants/Proposals/Regis-Information/IRB.aspx. The CC&IS Policies & Procedures Syllabus Addendum summarizes additional important policies including, Diversity, Equal Access, Disability Services, and Attendance & Participation that apply to every course offered by the College of Computer & Information Sciences at Regis University. A copy of the CC&IS Policies & Procedures Syllabus Addendum can be found here: https://in2.regis.edu/sites/ccis/policies/repository/ccis%20syllabus%20addendum.docx. 2015 Regis University CS361 Syllabus Page 8 of 8