Programming Syllabus

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

PIC 10A Introduction to Programming Spring 2013

Instructor: Keith Ouellette


Office: MS 6324
Email: [email protected]
Phone: (310) 206-3261
Office Hours: MW 1:00-2:00pm
R 9:00-10:00am (PIC Lab)
Website: https://ccle.ucla.edu/course/view/13S-COMPTNG10A-1

Teaching Assistants:

Section Instructor Office Email
1A Aidan Orchard PIC Lab [email protected]
1B Aidan Orchard PIC Lab [email protected]
1C Nathaniel Conos PIC Lab [email protected]
1D Nathaniel Conos PIC Lab [email protected]

Course Objectives:
To learn the basic principles and tools of procedural and object-oriented programming.
To be able to understand and debug written C++ code.
To be able to design and implement your own C++ programs.
To develop sound programming techniques.

Textbooks:
Big C++, 2
nd
Edition, by Cay Horstmann & Timothy Budd (Required)

Grading: Your final grade will be computed according to the following formula:
Homework Mean: 30%, Midterm I: 15%, Midterm II: 15%, Final Exam: 40%

Your overall average guarantees that you will receive at least the grade shown:

[87,90) B+ [77,80) C+ [67,70) D+
[93,100] A [83,87) B [73,77) C [63,67) D [0, 61) F
[90, 93) A- [80,83) B- [70,73) C- [61,63) D-

The percentage required for a particular grade may be lowered; it will not be raised. An
A+ is awarded for exceptional work throughout the quarter.

Exams: There will be two fifty-minute in class written exams and a cumulative three-
hour written final exam on the dates and times posted in the Course Outline and
Schedule. Students unable to attend an exam must notify the instructor before the exam
date if possible; otherwise, as soon as possible after the missed exam date. Documented
medical reasons, religious observances, and family emergencies are examples of
acceptable excuses to miss an exam. However, conflicts with vacation or travel plans are
not acceptable excuses.
If you are excused from taking an exam (not the final exam), your percentage score on a
portion of the final exam determined by the Instructor will become your excused exam
score. Taking the final exam is necessary for passing this course.

You must bring your UCLA identification card to every exam. You are not allowed to
consult books, notes, the Internet, laptops, digital media, cell phones, pagers, another
student, or another student's exam during any exam. Please shut off and completely stow
away all electronic devices during the entire exam period.

The fifty-minute exams will be returned to you in discussion section and your TA will go
over the exam at that time. Any questions regarding how the exam was graded must be
submitted in writing with your exam to the TA at the end of section that day. No regrade
requests will be allowed after section that day whether or not you attend section. If you
anticipate missing section that day due to a family emergency or a medical reason, email
the instructor beforehand to make arrangements to go over your exam.

Homework: To help you gain experience in C++ programming, there will be eight or
nine homework assignments. You will upload the requested source code files to our
courses CCLE website before the due date and time posted on CCLE. The lowest
homework score will be dropped. No late homework will be accepted. No
homework submitted by email to the TA or the instructor will be accepted. You are
solely responsible for naming your files correctly and for checking in advance that you
submitted them correctly. Any questions on how your homework was graded must be
presented in person and in writing to the instructor within one week of its return in
discussion section. You are responsible to check the course CCLE website regularly for
homework due dates, announcements, and additional homework instructions.

Academic Honesty: You are encouraged to discuss aspects of the course with other
students. You may discuss the homework assignments in general terms with others. By
general terms, I mean discuss using words and abstract ideas, not actual code. This will
allow you to truly understand what you are doing. If you need more specific help in
writing your programs, you may consult the TA or the instructor only. You may not
copy or cite any part of a program or document written by someone else in your
homework solution. (This also pertains to solutions found online.) Homework
solutions will be monitored for copied code. You must write your own independent
homework solution.

PIC Lab: Use the PIC Computer Laboratory in Boelter 2817 to work on your homework
assignments. Check the PIC lab website for hours of operation. You may also work
from a remote location as long as your solution still works using the PIC Lab computers
and is readable after you upload it completely to the correct location.

If you want to succeed in this course:

1. Read the entire section in the textbook before we cover it in lecture, keeping a pad of
paper handy. When you have a question or do not understand something, write it
down immediately on the paper and move on. When you are finished reading, ask me
or someone about it.

2. When creating a C++ program, always code a little, then compile, then run a test.
Never try coding a large portion of program at once since this makes it harder to track
down your bugs. You actually save yourself time in the long run by coding this way.

3. Comment your code, use whitespace wisely, and choose descriptive identifiers to make
your code more readable.

4. Test the example code given in class to see how it runs.

5. Make up your own examples using the example code as a base.

6. Avoid cutting, copying, and pasting code into your program. You will learn how to
code things faster, eliminate bugs, and remember what you did by typing everything
out.

7. When in doubt about how something in C++ works, do an experiment!

8. Go over your graded homework assignments and exams as soon as possible to
make sure you understand what you got wrong. Come see me or the TA if you dont.

9. Do at least 45 minutes of coursework every day. Like any other foreign language,
C++ needs to be practiced every day.

10. Remember that programming is learned by doing.

PIC 10A Lecture 1 Spring 2013
Tentative Course Outline and Schedule

Date Lecture Topic Readings Exams and
HW Due Dates
Week 1
4/1-4/5
Introduction to C++
Computers, Programming Languages
Creating C++ Programs
Variables, Identifiers, Constants, Operators,
Arithmetic
1.1-1.11,
2.1-2.5
Appendix A
Appendix D
Hw 1: 4/5
Week 2
4/8-4/12
Comments, Casts, Enumerated Types,
Operator Associativity and Precedence
Appendix C
p.54
Hw 2: 4/12
Week 3
4/15-4/19
Strings, Formatting Output
Specifying Control Flow
char and string ordering, Short-Circuit
Evaluation, More Control Structures
2.6, 3.1, 3.2, 3.3,
3.4, 3.5


Hw 3: 4/19
Week 4
4/22-4/26
Random Numbers, Input Validation
the for loop
3.6, 3.7, 3.8, 3.11
Exam I: 4/22
Hw 4: 4/26
Week 5
4/29-5/3
More Control Flow, Functions 4.1-4.5 Hw 5: 5/3
Week 6
5/6-5/10
More Functions
Solving Problems with Functions
4.6-4.9
10.3, 10.6

Hw 6: 5/10
Week 7
5/13-5/17
Objects, Horstmanns Libraries, Classes 2.7, 2.8
5.1-5.8
Exam II: 5/17
Week 8
5/20-5/24
Separate Compilation, Arrays, Vectors 5.9, 6.1-6.5 Hw 7: 5/24
Week 9
5/29-5/31
Pointers, Dynamic Memory 7.1-7.6 Hw 8: 5/31
Week 10
6/3-6/7
Streams 9.1-9.5 Hw 9: 6/7

Final Exam is on Tuesday, June 11, 2013 from 8-11am at a location TBA.




The instructor reserves the right to make changes to the homework due dates or the
number of homework assignments.

You might also like