CIS 1.5 MX FALL 2007

Introduction to Computing Using the C++ Programming Language

Computers are very dumb, they cannot think for themselves. You have to figure out how to solve a problem, and then tell the computer what to steps to take. Computers will do exactly what you tell them to do. They are very obedient and loyal. The key is to understand how to talk to a computer. In this class you will be learning the C++ Language; a computer programming language used to create programs on the computer. Once you understand C++ you will be able to tell the computer to do a wide range of tasks. Learning and practicing C++ takes time. You should expect to spend at least 10-15 hours per week preparing and running programming assignments. Please set aside enough time during your week to work on the assignments in this class.

You need both time and ambition to
succeed. You need ambition to make use of the time you have to learn. You need time to give your ambition the fuel it needs to complete tasks. When you have both, you have the power accomplish new tasks.

Topics Outline:

CIS 1.5 Topics Outline:

I Introductory concepts  simple programs, declaration and assignment statements, printing using cout, for loops, simple conditional statements, data types int, char, and double, arithmetic ops, precedence rules, standard library of functions

II Reading Data  reading using cin, interactive I/O, while loops, if else statement, use of files for input/output

III Functions introduction to functions in C++, programmer defined functions, prototypes, parameters, return types, void and parameterless functions, reference parameters

IV Additional Control Structures – do-while loops, nested loops, nested if, logical and relational operators (optional: break, continue, and switch statements)

V Arrays one dimensional arrays, using arrays with functions

VI Strings using the C++ string class, string manipulation using functions of the string class and programmer defined functions

VII Sorting and Searching simple sorting and searching algorithms

VIII Simple Classes (corresponds to structures in C) defining and using a behavior-less class (a class without member functions)

IX Base Systems  binary, decimal, and hexadecimal systems

X Additional Computer Science Topics compilation and execution, parts of a computer system, history of computing, etc.


Textbook for the class:

Problem Solving with C++: Jones & Harrow

Index for the book

Recommended (worth a look at):
C++ Without Fear, Prentice Hall (author: Brian Overland)

I recommend this free C++ Language editor, compiler, debugging tool:
Code Blocks

Free antivirus software:

There will be 2 class exams, plus a final exam.
Grading:
30% Programs (There will be about 6 to 8 programs) & HWs
30% Exams
30% Final
10% class participation
Projects must be handed in on time. Late projects will lose 1 point per week. Projects are graded on a 10 point scale.

When handing in programming assignments, please hand in the following:
  1. Your .cpp file on a floppy disk or CD (if you know about CD burning, you might want to make it so that you can reuse the CD for other assignments). Floppies are preferred.
  2. A print out of the program listing (source code).
  3. A print out of the output from the program.

Place everything inside of an envelope.



If you use AOL or AIM you may contact me using the following AIM screen name:
 
My email address is: cis1.5@lawrencegoetz.com

Office hours are after class in my office 2112N. However if you need help at another time, please check with me before hand.
718-951-5000 x2050

Training Videos

C++ Tutorial
CIS 1.5 Smart Tutor - As of Sept it was for C.

Code Lab - Practice C++
Access Code: CUN-BRO-5982-2669
Click "register" in the upper right corner Choose "I am a student in a course ..." and click CONTINUE Enter the Section Access Code: CUN-BRO-5982-2669

Class Topic
Reading
Assignment
Week 1 (Aug 27, 29, 30)

Introduction - Notes
Intro to how to use a compiler

First C Program - Notes

Chapter 1, handout
Class Signup

Assignment 1

Sept 3 College Closed
Week 2 (Sept 5,6)

 


Intro to the history of computing
parts of a computer system,
compilation vs. execution

Chapter 1

Assignment 1 due

HW problems due
Chapter 1, problems: 2A,2F,5C,6A


Week 3 (Sept 10)
No Classes Sept 12 and 13)
&
Week 4 (Sept 17, 19, 20)
Misc Topics

 

 

Evaluation Expression & While Loop- notes

 

Chapter 2

Assignment 2





Week 5 (Sept, 24, 26)
We will not meet on Sept 27th

  • For Loops
  • Do While Loops
  • Switch

Reading Data, While Loop, if-else - notes

Misc Topics- notes

Additional Control Structures - notes

Neat Output - Formatting IO Streams


Chapter 3
 

Assignment 2 is due

Assignment 3

Week 6  (Oct 1, 3)
We will not meet on Oct 3rd

Standard I/O, Redirection, Using Files - notes

File Stream IO Modes



Chapter 4
Nested Loops and Contansts

Assignment 3 is due

Sample questions. Do not hand them in, they are for your own self testing. You can compile them to see if your results match what you expected. If you have a question, please speak with me.

Week 7 (Oct 10, 11)

Functions - notes
Functions Continued


Chapter 5
Assignment 4


Week 8(Oct 15, 17, 18)

Functions Continued
Do-While Loops

 

Chapter 6
Review

Quiz on Oct 22
Topics are:
declaring and assigning variables
while and for-loops
if-else statements
/ % arithmetic operators
&& and || logic operators
Know how to write loop.
Week 9(Oct 22, 24, 25)

Arrays
Arrays - Notes

Chapter 7

Quiz on Oct 22

Midterm Topics

Sample Questions (more will follow)
Fall 2006 Exam
Spring 2007 Exam

Assignment 5

Assignment 4 due Oct 24.

Week 10
(Oct 29, 31, Nov 1)
Misc Topics,
Midterm Review,
Midterm
Nov 1st Midterm
 



Week 11
(Nov 5, 7, 8)

 

Character Strings - notes

String Class Functions - Online

Chapter 8



Week 12 (Nov 12, 14, 15)

Sorting & Searching - notes


Selection (Linear) Sort
Bubble Sort
Linear Search
Binary Seach
Chapter 9

Assignment 6
Week 13 (Nov 19, 20)
Nov 20th is a Thurs Schedule
Introduction to simple classes Chapter 10, Handout
Assignment 7
 Week 14 (Nov 26, 28, 29)

Last years's exam

Last term's exam

Base Numbers, BinHex - Binary

Misc Topic, Exam Review

 
 Week 15 (Dec 3, 5, 6)

 

Second Exam (Dec 3rd)
More on Classes

Handout
Final Review

Week 16 (Dect 10, 12)
Review and such


Final Dec 20th
1127 Ingersoll 1pm-3pm



Return