.

 

picture of a computer screen with C++ code
                        and the big letters C++ in front of it

 

CITY COLLEGE OF SAN FRANCISCO

Department of Computer Science

 

CS 110A

Introduction to Programming in C++

...

 

INSTRUCTOR INFORMATION

Wynd Kaufmyn, Instructor in the Department of Engineering & Technology 
email:  wkaufmyn@ccsf.edu 
website:  http://fog.ccsf.edu/~wkaufmyn

Office Hours: Please check my schedule for this semester's office hours.

Office:  Science Building, room 143A                     

Note:  The access to this office is through the classroom S143. 

Do not be shy about walking through the classroom, even if there is a class in session, to get to my office. 

Phone:  (415) 239-3159  (phone is not the best way to reach me - email is better)


A note about emailing me:
Please be sure to put an appropriate subject line in your email. If the subject line is generic (such as "Hi!" or "Help!") and I don't recognize your email address, I am likely to delete your message without even opening it.



..

COURSE INFORMATION
CS 110A
Introduction to Programming in C++

Please see my schedule for Section number, CRN number, meeting times and location.


 .



COURSE DESCRIPTION

Introduction to computer programming and problem solving. No prior programming experience required. Course concepts include: problem solving techniques, algorithms, program design, control structures, functions, arrays and use of the C++ programming language.



.

COURSE OBJECTIVES
You will learn the principals of computer programming. This class will use the computer programming language C++ as the tool to accomplish this purpose. You will learn many important features of C++, but more importantly, you will be prepared to go on to study other programming languages.


.

COURSE PREREQUISITES
There are no official prerequisites for this course, however, it is highly recommended that you take these two courses before enrolling in this course:

  • MATH 840 (Elementary Algebra) or equivalent
  • CNIT 100 (Introduction to Computers Using PCs) or equivalent

 

This course is a first course in computer programming and so you are expected to know how to use a computer for basic tasks including e-mail and browsing the web. We'll be using Linux in this class, so experience with it would be helpful, but not required.

 

You are also expected to be familiar with some basic mathematical concepts. Two important examples are the concept of order of operations and the concept of functions. You'll find that computer programming requires a similar sort of discipline and reasoning as mathematics.

 

Learning to write computer programs is a time consuming and sometimes frustrating endeavor. You should expect to spend at least 10 hours per week: reading the textbook, working on programming assignments and other class work. If you don't have the time or dedication for such work, this class is not for you.



.

TEXTBOOK
Starting Out with C++: From Control Structures through Objects
(6th Edition) by Tony Gaddis published by Addison Wesley Higher Education
..
A custom edition of this book is available at the CCSF bookstore on the Ocean/Phelan campus which is less expensive. The author is listed as Boegel(Gaddis) and it has only the parts of the book that we will be using.
..
Any of the following editions of this book are acceptable:
  • "2nd Custom Edition" with author listed as Abensohn/Gaddis
  • Starting Out with C++: From Control Structures through Objects (5th Edition) by Tony Gaddis published by Addison Wesley Higher Education  .
  • Starting Out with C++ (Brief or Standard Version of 3th or 4th Edition) by Tony Gaddis and Barret Krupnow published by Addison Wesley or Scott/Jones Publishing, 2004
..
This textbook may be accessed via an online subscription for less cost
..
It's also on reserve in Rosenberg Library, so you can check it out there to read in the library for 2 hours at a time - just go to the Reserve Desk and ask for the book for CS 110A. 


..

EMERGENCY PROCEDURES

If for some reason I am unable to access our class due to a personal emergency, or there is a technical problem accessing the course interface, I will contact the Chair and you will receive an emailto your CCSFmail address providing you with details contingency plan for course work. 



..

 

STUDENT LEARNING OUTCOMES

Upon successful completion of this course a student will be able to:
1.    Write and predict the results of C++ code using standard input and output, and with files. Test and debug such programs.
2.  Write and predict the results of C++ code with numeric and Boolean expressions, if -statements and loops, including nested control structures.
3.  Design, write and predict the results of C++ code using functions that have parameters (both call by reference and call by value) and return values.
4.  Design and develop C++ code to process arrays.


...

 

YOUR COMPUTER ACCOUNTS
Everyone who is registered in this class automatically gets 4 computer accounts:
.
hills
account
This account gives you access to the City College server called "hills" which runs on the Linux operating system. There are programs on this server which you will be using in this course, including a C++ compiler called g++. Some students prefer to use a different C++ compiler. You may do so if you wish, however, you are responsible for dealing with any compatibility issues.

 .

ACRC account

This account gives you access to the computers in the Academic Computing Resource Center in Batmale 301
For help using these accounts you should attend an orientation offered by the ACRC in the first couple of weeks of the semester.  

..

Linux desktop machine account 
This account is used when you sit down at a computer in the classroom L413 or at one of the Linux desktop computers in the ACRC (L301).

..
Account to access online courses at CCSF

Finally, you will get access to an online version of this course which you will use to access the assignments and quizzes. This online course will
give you the information about the login and passwords for the accounts listed here.

..
To login into this online course go here:
https://ccsf.instructure.com/

Your login to this site is your CCSF student ID (For example W00123456 or @00654321)
Your password is your RAM ID.




 

COURSE SCHEDULE

Each week's tasks are listed in the online course modules. Hence, you must get access to this course as soon as possible. If you have any trouble, please contact me.






ATTENDANCE

You are expected to attend all scheduled face-to-face meetings. If you have extenuating circumstances and you miss a meeting, be aware that you are still responsible for all information transmitted there, including announcements or lecture material.

.
If you need to miss a scheduled face-to-face meeting, please do not call or email me. Since you need to know what you missed you should obtain the contact information of at least three of your classmates so that you can get the information that you missed, or use the discussion forums on Insight.



.

DROP PROCEDURES
Generally it is the student's responsibility to drop or withdraw from a class by the final deadlines given in your course schedule. Please do not ask me to drop you; use the automated phone or web system, or contact the Office of Admissions and Records to be withdrawn from a class. If you are not present in the course for more than two weeks, I may drop you from the class, but please do not count on this. If you want to be dropped, you need to ensure that it happens, so you may need to do it yourself. If your name is on the roll at the end of the semester and you have stopped attending class, you will be assigned a final grade of F.


.

 

CLASSROOM STANDARDS
The classroom should provide an environment that breeds professionalism and is conducive to learning.

To facilitate these goals, please honor the following:
  •  Do not come late.
  • Silence all electronic equipment, including computers.
  •  Do not have side-conversations with your neighbor during class. It is very easy to think that you are speaking softly and not disturbing anyone, but this is not usually the case.
  •  Ask questions regarding the course material in class so that others may benefit, however, if you have questions regarding individual grading of your assignment or other personal issues, talk to me outside of class.
  •  Do not bring food into class. A cup of coffee, water, etc. is acceptable; however, if there is a spill, you need to take the responsibility to clean up.

If any of this presents a problem to you, please speak to me about it.



.

 

ASSIGNMENTS
Homework will be assigned each week, generally alternating between Practice Problems and Programming Labs.

You will be required to log into an online version of this course to get these assignments and submit them.

 .

Practice Problems:
You are encouraged to do these problems together, using the discussion forums. They will not be turned in or graded. Solutions will be posted after the due date. Each student is responsible for ensuring that they understand how to do each practice problem. 

 .

Programming Labs:
You should do these assignments by yourself. The labs will be graded generously, primarily based upon the effort put into them and the professional appearance and adherence to correct programming format. The correctness, clarity, programming style, and efficiency will be grading criteria for the exams, not these programming labs. These labs are worth 20% of your overall grade. Each student is responsible for ensuring that they understand how to do each programming lab. 

 .

Lateness policy:
The Programming Labs are due by the end of the work week in which they appear. If you are having trouble with the assignment, then get help!



.

GETTING HELP
Do not be shy about asking questions! You may use the class's online discussion forums for help. Please feel free to answer your classmate's posts when you can. I will read all discussion forum postings but I will only post when necessary. I hope that you will be able to help each other!

When posting a question please include a copy of your program in the body of the post, not as an attachment. And please make sure to specify exactly what the problem is. Explain what error messages you are getting or what is not working. If you get output, copy that in the body of the post as well.

.

In addition, you can get help from me by coming to my office hours.



.

QUIZZES
There will be a quiz almost every week. You are allowed unlimited attempts on the quizzes, however, they are due by the end of the work week in which they appear, i.e. on Friday. It will generally be possible to submit your work later than that but please try to have it finished by the end of the week end. If you are having trouble then get help!
. ..      

The highest score from all attempts is the only one that is recorded. The quizzes are worth 20% of your overall grade.

 ..             

You should view these quizzes as interactive learning tools rather than quizzes to stress about. You just need to be sure to take the quiz before it closes! Please do not ask me to open a quiz for you if you do not take it before it closes.

..             

Quiz #0 (CCSFmail)
When you register at CCSF you are automatically given a Google email account, which we call CCSFmail. It is the only way that teachers, administration, etc. can contact you. So you need to check it regularly. To make sure that you have access to it, I will send an email to you at this account by the end of the second week of the semester. You need to follow the instructions in this email by the end of the fifth week of the semester. I consider your response to this quiz as Quiz #0. If you do not respond you may be dropped from the course. 


.

 

EXAMINATIONS

There will be 2 exams: a midterm and a final which is cumulative.

..      

Exams are graded for correctness of solution and for clearly showing the method of solution. Your grade will suffer if you cannot present a clear, legible solution.

 ..      

You should expect the exams to be closed book/closed note, although this is subject to change at the last minute. In either case, you will be allowed one single-sided sheet of paper no larger than 8 1/2" x 11" with no staples, glue or tape.

 ..      

At the completion of any testing time (quizzes included) I will announce that the test is over and that you should put your writing implements down. Your exam will not be graded if you do not put your implement down immediately. If your exam is not graded you will receive zero points for it.

 ..      

Make-up exams are given only for extremely extenuating circumstances that can be documented.

 ..      

MIDTERM EXAM
There will be a two-hour midterm exam during the semester. It is listed in the course schedule; however, it is subject to change.

 ..      

FINAL EXAM

There will be a two-hour comprehensive final exam during final exam week.

Note: The final exam date is set by the college and cannot be changed. Please mark your calendars now.



.

CHEATING POLICY

Cheating is an egregious offense. You will suffer profoundly if found cheating. Don't do it.


 




CCSF DISCRIMINATION POLICY
The San Francisco Community College District is committed to the principles of equal opportunity, and the prevention of discrimination and harassment in any program or activity of the District on the basis of race, color, ancestry, national origin, ethnic group identification, religion, age, gender, gender identity, marital status, domestic partner status, sexual orientation, disability or AIDS/HIV status, medical conditions, or status as Vietnam-era veteran, or on the basis of these perceived characteristics, or based on association with a person or group with one or more of these actual or perceived characteristics.
 
If you believe you have been subject to discrimination, please contact Dr. Leilani Battiste, Title 5/EEO/ ADA/Title IX Compliance Officer at (415) 452-5053 or lbattiste@ccsf.edu





 

GRADING
Your final score will be made up of the following components:

  • 20% - Programming Labs
  • 20% - Weekly Quizzes (taken online)
  • 25% - Mid-term Test
  • 35% - Final Examination

Grades will be assigned according to the following percentage scale:

  • 90% - 100% A
  • 80% - 89% B
  • 70% - 79% C
  • 60% - 69% D
  • 0% - 59% F 

..
I may curve grades if it will be to students' advantage.
Please do not email me asking for any special considerations. Your grade will be based solely on the grading criteria and what is fair to all.
Also, please do not email me requesting that I send your grade. You will need to wait until the school officially publishes it.


 

...