Introduction to Computer Science

CSCI 105     Fall Semester, 2014

 

Instructor:       Dr. Shieu-Hong Lin

Email:

Class Website: http://csci.biola.edu/csci105Lin/

 

Class: BUSN 209

Section 1: 10:30-11:45pm;     Mon. Wed.     

TAs: Frank Navarro-Velasco and Thomas Stewart

Section 2: 1:30-2:45am;         Mon. Wed.

TAs: Alvin Suh and William Tan 

 

Dr. Lin Office Hours: Mon. & Wed. 12:00-1:15pm, Math & CS department

               

Course objectives: 

˛  Able to use the Microsoft Visual C++ programming environment to develop C++ programs composed of multiple functions in multiple files.

˛  Able to fluently write C++ programs for problem solving using basic C++ language features such as built-in data types, variable declaration, arithmetic operators, conditional statements, loops, functions, arrays, structures, and classes.

˛  Gain a solid understanding of fundamental concepts of computing, such as programming, programming languages, compilers, execution of programs, algorithms, and the binary system.

˛  Develop a perspective of faith and learning in computer science through reflection assignments on the essence of computation and the wide spectrum of applications in important and interesting areas.

 

Textbook

˛  Tony Gaddis, Starting Out With C++: From Control Structures Through Objects, Addison Wesley, 8th Ed., 2015.


 

 

Grading Structure

1.       Reading and reflection assignments                               15%

2.       Programming assignments                                              45%

3.       Exams                                                                              40%

 

A

A-

B+

B

B-

C+

C

C-

D+

D

D-

93%

90

87

83

80

77

73

70

67

63

60

 

Reading, programming, and weekly progress reports

˛  Reading assignments: Reading assignments are an important part in this course. Spend time reading the sample programs and explanations in the textbook to develop a solid deep understanding of the key concepts covered in the lectures. To get the reading credits, you need to submit the weekly reading report through Canvas on time. They are always due on Monday with the grace period extended to Wednesday.

˛  Programming assignments: Weekly programming assignments form the core of the course. They require you to integrate and utilize programming concepts and techniques learned in the course in your programs. Peer discussion is very encouraged. However, do not electronically pass your code around, and copying code from other people is absolutely prohibited. 

˛  Programming environment: In the lab, we use and support the Microsoft Visual C++ 2010 Edition for C++ programming on the Windows platform, which you can also download, install, and register for free usage on your own computer. You can also use other programming environments such as the Xcode suite on the Mac platform for C++ programming, but you need to explore the technical details of such environments on your own.

˛  Submission of programming assignments: They are always due on Monday with the grace period extended to Wednesday. For each programming assignment. Do not fall behind since later programming assignments require programming skills in the previous ones.

˛  Late policy: You lose 15% (one point out of the 6-point scale) each day for being late in sending in programming assignment. Unless it is something like a serious health issue with statements from the doctor as proof, you will receive no point if it is one week late.

 

Honor code and grading policy for programming assignments

 

Programming assignments form a critical part of the course. They require you to integrate and utilize programming concepts and techniques learned in the course in your programs.

˛  Peer discussion is most encouraged, but copy-and-paste code from others is absolutely prohibited and will lead to discipline actions.

˛  Peer discussion based on code shown on the screen and paper could be very helpful for debugging purpose and explanation of ideas. But you should never pass around your code as electronic files to others except for the TA and the instructor.   

˛  You should make sure that you are able to reconstruct your code from scratch without any outside help when you submit a programming assignment as your own work.

 

We’ll grade each programming assignment in a 0-6 scale based on the following guidelines (could have a fraction like 5.5 points out of 6), and a one-point daily discount rate for being late.

  1. Nothing done.
  2. Source code is completed but the code fails to compile successfully.
  3. Source code can compile and do something required, but has serious bugs or miss a couple of key features.
  4. Source code can compile and do most of the features required, but has many minor bugs or miss a key required feature.
  5. Source code can compile and do all the features required, nearly fully functional, only a couple of minor bugs.
  6. Source code can compile and do all the features required, fully functional, no bugs.
  7. In addition to the points received above, get one more point if the source code is well indented and commented to make it visually very readable.

 

Tentative Schedule

˛  Aug.27- Sept. 10              Introduction to programming in C++

˛  September 11-20             Conditional statements

˛  September 21-30             Loops

˛  October    01-10               Functions

˛  October    11-20               Review & Midterm

˛  October 20-31                  Arrays

˛  November 01-10              Searching & sorting with arrays

˛  November 11-20              Pointers

˛  November 21-31              Structures & classes

˛  December 01-10              Object-oriented programming & Review

˛  December 11-20              Final

 

 

 

Students desiring accommodations on the basis of physical, learning, or psychological disability for this class are to contact Disability Services. Disability Services is located in the Learning Center in the Biola Library, upstairs from the main floor, and can be reached by calling 562.906.4542 or extension 4542.

 

 

ACADEMIC HONESTY POLICY: We are committed at Biola University to ethical practice in teaching, scholarship, and service.  As such, plagiarism and other forms of academic dishonesty will not be tolerated.  Please see the undergraduate/graduate student handbook and/or the departmental/program/school policy on academic honesty.  It is imperative that you present all written, oral, and/or performed work with a clear indication of the source of that work.  If it is completely your own, you are encouraged to present it as such, taking pleasure in ownership of your own created work.  However, it is also imperative that you give full credit to any and all others whose work you have included in your presentation via paraphrase, direct quotation, and/or performance, citing the name(s) or the author(s)/creator(s) and the source of the work with appropriate bibliographic information. To do otherwise is to put oneself in jeopardy obeing sanctioned for an act or acts of plagiarism that can carry serious consequences up to and including expulsion from the university.