What else do you need to know about this class? CIS22B / Joe Bentley / Fall 2018
This is an intermediate programming course. You are here because you have made a commitment to learning C++ beyond an introductory level. Upon "successful" completion you will have attained marketable programming skills. You will be of value as a programmer. Since this course is an intermediate level class, you will get less "hand holding" than you did in the introductory course (CIS22A). You will be expected to solve more problems on your own, you will be expected to debug your own code, and you will be expected to research functions and techniques on your own.
Two lectures per week, an hour and 50 minutes, with a 10-minute break. Each lecture will contain new material. The lectures will contain concepts and examples, on the board, on web page examples, developed "live". There is a lab exercise assigned with each lecture. Assignments will often be discussed in class. There is one midterm and one final. And there is time to ask questions. If you ask questions, then, most likely, you are involved and you have some basic understanding of what is going on
In this course you will be writing a lot of code. You will be compiling all the code you write. It is essential that you acquire a compiler immediately. The instructor can assist with installation. You can use any standard, not-too-old C++ compiler. You can work on any computer type, PC, Mac, Linux, Unix, Chrome Book, desktop, laptop, Windows (7/8/10). The ATC computer lab works great and there are different compiler options available. A laptop is good. If you bring it to class, you can try out the examples presented in class. Compiler suggestions: Code::Blocks, NetBeans, MS Visual C++ (2010 or later), the gnu compiler, Eclipse. Compiling on a Mac is not recommended. Recommended compiler: Code::Blocks on a PC. It is easy to use and does a good job of enforcing the "standard".
Online time will be held on Tuesdays, 7:00-8:15 pm. This time will be used to review topics covered in class, to answer questions, to discuss assignments, to work exercises and practice problems, and to explore related topics in more detail. The online time will be held online using the web-based, interactive software, ConferZoom. The instructor will be logged on, speaking through a webcam and sharing his desktop to answer questions and provide demonstrations. You may ask questions using your microphone or a chat box. You will need a ConferZoom account to access the software.
Email source code. Check your code before sending it. Once received, it will be graded.
In the email, use CIS22B / Ass# as the email subject (where # is the assignment number.
Add the source code as an attachment. Name it ass#.cpp (where # is the assignment number).
Add comments to the top of your source code including your name, the assignment #, and the compiler used.
If you want to ask a question about the assignment, make sure it is clear that you are asking a question, otherwise, it will be graded. Do not ask to have your assignment checked before you submit it.
The code will be compiled and tested using either Code::Blocks or NetBeans on Windows or Linux. If your code does not compile and run with the instructor's compiler, it will not be accepted.
Assignments are due at the beginning of the class lecture on the due date specified. Assignments will be accepted late with a 5 point penalty if they are received within 24 hours of the due date. After that time, they will not be accepted.
You are encouraged to work on assignments by yourself. Copying of assignments will result in a zero grade for both students. The instructor is available to answer questions and provide assistance.
You may get help with assignments using email, office hours, or online time. There is a maximum limit of 6 email questions per assignment. If you have more questions than that, you need a different approach.
Start a new email for each lab exercise.
In the email, use CIS22B / Ex# the email subject (where # is the exercise number).
Add the source code as an attachment. Name it ex#.cpp (where # is the exercise number).
Check your code before sending it. Once received, it will be graded.
If you are asking a question about the exercise, make sure it is clear that you are asking a question. Otherwise, it is assumed that you are submitting it for grading. Do not ask to have your exercise checked before you submit it.
Add comments to your source code including your name, the assignment #, and the compiler used.
The code will be compiled and tested on either Code::Blocks or NetBeans running on Windows or Linux.
Lab exercises are due at the beginning of the next lecture. Lab exercises are not accepted late.
The code will be compiled and tested using either Code::Blocks or
NetBeans on Windows or Linux. If your code does not compile and run with the
instructor's compiler, it will not be accepted.
You are encouraged to work on exercises by yourself. Copying of exercises will result in a zero grade for both students. The instructor is available to answer questions and provide assistance.
The CodeLab exercises are not required. You will be given extra credit points for the exercises that you complete.
These are web page exercises. They are free if you are enrolled in the class.
You must set up your account
The web page address for CodeLab is https://codelab3.turingscraft.com/codelab/jsp/login1.jsp
Use access code: DEAN-26607-FEFF-38
The first 7
chapters of CodeLab exercises, through Structures, are due 10/31 (9:30 am), the
rest are due before the final.
You may ask for help on any CodeLab exercise. You can use on-line time, office hours, or email to ask for hel
Your CodeLab extra credit points (10 maximum) will be determined by the percent of exercises completed.
work independently, but write code for everyone.
debug your code
write test cases
test your code as you proceed
ask yourself, "what if ..."
write functions to solve a specific task
write reusable code
write tight code
write efficient code
write self-documenting code
write neat code
use a second, or third compiler
The textbook is a good one. The 8th edition of the textbook is acceptable for this class. You are advised to read the chapters following the schedule listed in the syllabus. Some class examples may be taken from the textbook.
There will be updates to the class web pages. Refresh your browser if you are viewing a web page a second time.
Lecture notes web pages will be updated on the weekend before the lectures.
The Midterm and Final
These are timed. You will be permitted one page notes (both sides of the paper). Preparing this page of notes is a good way to study for the test.