> Syllabus - Intro to Computer Science > > Jerry Waxman > waxman@aleph.cs.qc.edu > > The main purpose of this syllabus is for evaluation by > SSSB to compare the Intro to Computer Science class > offered in YC to the C++ for Business Course offered > in SSSB. As such, this syllabus is derivative of that > for the SSSB course, with notes as to any differences. > That syllabus is available at: > > http://www.yu.edu/faculty/arosnfld/2125/syllabus.htm > > The order the material is presented differs, but for > the purposes of comparison I will follow that of the > SSSB syllabus. I think a comparison of the midterms > and finals of the courses would actually provide a > better basis upon which to judge what is learned in > each class. In the future, we may try to change the YC > syllabus to better match that of SSSB and thus allow > students who wish to switch to MIS a smoother > transition. > > Differences will be marked in []s. > > Week 1: Introduction to Computer Hardware and Software > > A. Basic Overview of Terminology > B. The Software Life Cycle > C. Memory Storage and Binary Systems > [We do all the above.] > > Weeks 2-4: Introducing Visual C++ and Basic Programs > A. Basic Output (cout) > B. Creating and Using Variables with Input (cin) > C. Arithmetic > D. Basic Data Types and Type Casting > E. Formatting Output (iomanip library) > F. Using the string library > G. Using Files (fstream library) > > [We do not discuss E, the iomanip library. Everything > else we do.] > > Class on Creating Basic Programs > Lab Class on Making Basic Programs > Class on setprecision, math > [We do not discuss setprecision. We discuss and > implement various > functions in math.h] > > Lab on Files > Class on Files and Objects > Lab Class on Files, Math, and Strings > [The discussion of creating classes is left to the > Data Structures class. > As time permits, we sometimes cover structs. We > demonstrate the STL string class as well as ifstream > and ofstream.] > > > Weeks 5-7: Using Logical Statements > A. Boolean Logic > B. If, Else if, and Else Statements > C. Case Statements > D. While, For, and Do … While Loops > > Class on Boolean Logic and If Statements > Lab Class on If statements > Class on Case Statements and While Loops > HW on Case Statements and While Loops > Class on For Loops and Case Statements > Lab on Loops > [We do all of the above. We also cover the switch > statement, as SSSB does, but which was not mentioned > on the syllabus.] > > Weeks 8-9: Writing Functions > A. Using Void Functions > B. Returning Values to/from Functions > C. Issues of Scope (local / global variables). > [We do all of the above.] > > Weeks 10-13: Simple User Defined Data Structures > A. Enumerated Data Types > B. Strings > C. One Dimensional Arrays > > [We discuss enums if time permits. We discuss strings, > one dimensional > and multi-dimensional arrays.] > > [The Intro course also encompasses some material from > the second semester of C++ for Business. Thus, the Intro > course actually covers more material. > Here is a quick list of the topcs from the Second Semester > that we discuss in the Intro course: > One Dimensional and Two Dimensional Arrays (Weeks 1 > and 2) > We do NOT cover structs but not classes (weeks 4-5) > We do brute force, bubble sort, and also insertion > sort. We do NOT do binary search, but we will in the > future. (Weeks 6-7) > Pointers and Pointer Arithmetic: we cover pointers and > references, but we leave the introduction to dynamic > memory allocation to the Data Structures class. (Weeks > 8-9) > Recursion: We briefly discuss recursion, but more > fully develop them and tempate function in Data > Structures. (Week 10) > The remainder of the course except the Introduction to > OpenGL and MFC programming is covered in Data Structures. > Also covered in the Intro course are topics such as base > conversion, the bitwise operators, and writing, reading, > and using such code as > float integrate(float (*f)(float), float b, float e) > In other words, passing function pointers to functions. > The above code was taken from the last or second to last > assignment. We also cover using and passing to > functions multi-dimensional arrays, arrays of pointers, > and the like. > In terms of homeworks, 15-30 non-trivial programming > assignments are assigned over the course of the semester. > There are also labs where students are given lab assignments > and learn to use the debugger effectively, as well as > (depending upon the semester) some basic HTML and Visual Basic. > >] >