/ Intermediate Programming with C/C++
Instructor: Jaime Garcia Location: s205

510-744-2280

Course Description and Objectives

Course Description: This course is designed only for students who have had a some exposure to the C programming language or another programming language, and would like to continue to learn more and develop proficiency with C++. We will be enhancing our knowledge of Arrays, Pointers, Strings, Classes. In addition, we will learn how to input from files and write to files using both C and C++ depending on the proficiency and experience of the student. We will touch on Object Oriented Programming with C++. The class activities will include some direct instruction, and mostly laboratory work that allows the students to develop solutions to interesting and challenging problems. During the labs, students will learn to design, test and debug solutions, using proper programming techniques.

Note: Students registered for this course must have their own laptop computer with Windows or MacOS. The school will provide the textbooks.

Materials:

1.  Textbook: Textbook: C++: How to Program by Harvey M. Dietel, P.J. Dietel, Prentice Hall, 7th Edition, 2007, ISBN 978-0-13-611726-1 (will be provided)

2.  A Laptop with a C++ compiler, and an IDE such as Xcode 6.0 or higher and Eclipse IDE for Mac and Visual Basic for Windows users.

Download Xcode at: https://developer.apple.com/downloads/index.action

Download Eclipse: https://www.eclipse.org/downloads/packages/eclipse-ide-cc- developers/keplersr1

3.  A Macbook Pro is preferable with OSX 10.7 or higher and Xcode version 4.5 or higher.

Note: You must have a C compiler loaded on your laptop with an IDE. If you will be using a Laptop with Windows, you must load an IDE such as, Visual Basic Express.

Note: The C compiler and the IDE must be loaded and working before the first day of class. Please refer to http://www.mrgarciaswebsite.com for instructions.

Grading

Homework will be assigned daily in the form of labs that could take more than one hour to run successfully. You will also be responsible for daily class activities. Some of the class activities will be in the form of collaborative group work. You will have two Quizzes, and one final. You will also be assigned a final project in which you will have the opportunity to apply what you would have learned in this course. It will be turned in on the last day of the course and will account for 20% of your grade. See the table below for detail on grading and assessments.

Assignment, or Assessment / Total Points / Grade %
5 Homework Labs (programs) / 5 Labs x 120 maximum points each = 660 / 30%
10 Class Activities / 10 Activities x 44 maximum points each = 440 / 20%
2 Quizzes, 1 Final / 2 Quizzes = 260 + Final Test = 400 / 30%
1 Final Project / Final = 440 / 20%
Totals / 2200 / 100%

A – 90-100% (1980 – 2200) B – 80-89% (1760 – 1979)

C – 70-79% (1540 – 1769) D – 60-69% (1320 – 1539)

*This course is worth 1 credit and will appear on your high school transcript.

The school day is the same during J Term, 8:00 AM- 2:34 PM.

This class meets from 11 AM to 2:34 PM.

Class Policies

A hard copy of all assignments is due at the beginning of the class period on the designated due date. Work submitted after that point is considered late. Late work will not be accepted due to the accelerated nature of the J-term course.

Students cannot be absent during January Term. These short -term, intensive classes are highly interactive and require student participation.

In the event that a student is hospitalized or has another unavoidable, extremely serious situation, the following apply:

●  Each calendar day for each course equals 3 school days in a concentrated course. 10% off per hour of class absence = 30% off per J Term Day missed.

●  In class activities cannot be made up due to absenteeism.

●  Students still need to come to school even if they miss too much to earn credit.

o  California Education Code Section 48260 states that any pupil subject to full-time education who is absent from school without valid excuse for more than 30 minutes on each of three days in one school year is a truant and shall be report to the school district.

●  The student and parent must contact Dr. Meyer by email as soon as possible to discuss how credit may be earned toward graduation. .

●  All international students please refer to your contract regarding attendance.

Special Dress is allowed throughout J-Term. See the student handbook for specific guidelines regarding dress and student conduct.

The student store will be closed and there will be no microwave available during the shortened lunch period. Please plan to purchase Lunch Master or bring Thermos lunch or a cold lunch.

Students are expected to be in their seats and ready to start the class when the period bell begins to ring. Likewise, they are to remain in their seats (unless given permission to do otherwise) and to participate actively in the learning process throughout the period.

Plagiarism

No form of cheating or unlawful plagiarism is tolerated. Such activity results in any or all of the following: (1) a disservice to the student in reaching his/her potential, (2) an unfair, assessment advantage of one student over his/her peers, (3) dishonest representation to the teacher of the student’s actual abilities, (4) stealing another student’s ideas, placing that student’s academic standing in question and (5) violation of federal copyright laws. Students who are found to be cheating will receive zero points on the relevant assignment(s) as well as a minimum of 4 detention points, possibly resulting in suspension.

Student WIFI Access

Expectations

Students must abide by the rules of the Technology Use Policy as described in the Student/Parent Handbook. Both student and a parent (or guardian/host parent) have read and signed a form granting them permission to use computers and devices in the classroom.

Consequences

In-class device use is intended to enhance the learning experience. Misuse of devices (school-owned or BYOD) results in at least the following classroom consequences in addition to school consequences related to the context of the infraction. For example, first misuse of device (school-owned or BYOD) when used for abusive, violent, inappropriate and/or disrespectful language will be a 2-point detention (as seen in the student-parent handbook) for the misuse of the computer (classroom consequence) and a 4 point detention for the manner in which it was used (school consequence). The total of 6 points would result in immediate suspension and behavioral probation plus additional detention. Also, a consequence could be immediate dismissal depending on the infraction and the context.

First offense: CLASSROOM CONSEQUENCE: 2-point on related assignment, suspension of device use. SCHOOL CONSEQUENCE: Depends on nature of infraction (see student/parent handbook).

Second and third offense: CLASSROOM CONSEQUENCE: 4-point on related assignment, suspension of device use. SCHOOL CONSEQUENCE: Depends on nature of infraction (see student/parent handbook).

RenWeb

RenWeb is an online, student management system for the entire school and represents the primary medium of communication between school and home, regarding:

●  Class schedules

●  Grades

●  Assignment due dates and descriptions

●  School or class announcements

●  School calendar

Both parents and students are expected to have access to RenWeb through the internet and to utilize the website on a regular basis. RenWeb provides separate student and parent viewing which can be accessed at https://www.renweb.com/Logins/ParentsWeb-Login.aspx.

●  School ID: FRE-CA

●  User ID: Your full email address on school records (if your email address does not give you access, please contact the school office to ensure you have registered the correct email)

●  Password: Chosen by parent and student

Since teachers post important announcements, assignments, and documents throughout the week, students are expected to check this daily. Renweb is used extensively as a means of communication between the classroom and home. Reading all posts in the gradebook, homework, and resource sections is vital to your strong performance in class!

Grading Rubric for all assignments

Homework will be assigned daily in the form of labs that could take more than one hour to run successfully. You will also be responsible for daily class activities. Some of the class activities will be in the form of collaborative group work. You will have two Quizzes, and one final. You will also be assigned a final project in which you will have the opportunity to apply what you would have learned in this course. It will be turned in on the last day of the course and will account for 20% of your grade. See the table below for detail on grading and assessments.

Assignment, or Assessment / Total Points / Grade %
5 Homework Labs (programs) / 5 Labs x 120 maximum points each = 660 / 30%
10 Class Activities / 10 Activities x 44 maximum points each = 440 / 20%
2 Quizzes, 1 Final / 2 Quizzes = 260 + Final Test = 400 / 30%
1 Final Project / Final = 440 / 20%
Totals / 2200 / 100%

A – 90-100% (1980 – 2200) B – 80-89% (1760 – 1979)

C – 70-79% (1540 – 1769) D – 60-69% (1320 – 1539)

ASSIGNMENTS AND DEADLINES

Course Plan

Day / Agenda/Objective / Homework
01/03
Tuesday / 1.  11:30 – 12:15 Lesson1: Introduction to Object Oriented Programming (68)
2.  12:15 – 1:00 Lab 1 Part A: Defining a Class with a member function (figure 3.1)
a.  1:00 – 1:15 PM Break
3.  1:15 – 2:34 Lab 1 Part B: Data Members, Set Functions and Get Functions
4.  Project discussion about requirements. / Homework Assignment Write a class that uses an object to ask the user to enter 2 integers and prints the sum, product, difference, quotient and the remainder of the two integers. (Figure 3.5).
01/04
Wednesday / 1.  11:30 – 12:15 Lesson2: Review of Control Statements (109)
a.  12:15 – 1:00 Lab 2 Part A: if/else Selection, and while Repetition Statements
b.  Do Self-Review Exercises on Page 151: 4.1 to 4.10.
1:00 – 1:15 PM Break
2.  1:15 – 2:34 Lab 2 Part B: Do – While and counter controlled repetitions
a.  Write a program that utilizes looping to print the numbers from 1 to 10 side-by-side on the same line with 3 spaces between each number. Do self-review exercises: 5.1 to 5.3. / Homework Assignment 2 – Using only the techniques you learned in this chapter, write a program that calculates the squares and cubes of the numbers from 0 to 10 and uses tabs to print.
01/05
Thursday / 1.  11:30 – 12:15 Lesson3: Functions and recursion (207)
a.  Function definitions with multiple parameters
b.  C++ Library Functions and Classes
2.  12:15 – 1:00 Lab 3 Part A: Case Study; Random Number Generation
1:00 – 1:15 PM Break
3.  1:15 – 2:34 Lab 3 Part B: Recursion
a.  Example Using Recursion: Fibonacci Numbers
b.  Quiz 1 / Homework Assignment 3 – Write a program described in 4.26, pg. 149.
01/06
Friday / 1.  11:30 – 12:15 Review of Arrays (282)
a.  Examples using Arrays
2.  12:15 – 1:00 Lab 4 Part A: Examples using Arrays (Figure 7.3)
a.  Write a C++ program that uses an array to store and print out the even integers from 2 to 30. (figure 7.5)
1:00 – 1:15 PM Break
3.  1:15 – 2:34 Lab 4 Part B: Passing Arrays to Functions / Homework Assignment 4 – Write a program that passes an array to a function. You may modify an example from the book.
01/09
Monday / 1.  11:30 – 12:15 Lesson5 Pointers (345)
a.  Understanding pointers
b. 
2.  12:15 – 1:00 Lab 5 Part A:
a.  Exercises on Page 255: 6.6 to 6.10.
b.  1:00 – 1:15 PM Break
c.  Quiz 2 / Homework Assignment 5 – Rewrite the program 6.19, pg. 259.
01/10
Tuesday / 1.  11:30 – 2:34
2.  Final Test
3.  Complete and demonstrate project for grade.
01/11-13
Wednesday-Friday / HS Retreat Jan 11-13! / d