CS 160 Home Page

CSci 160 is an introduction to programming using C++.

Announcements:

Due to campus closure all announcements, PowerPoints etc. will be on BlackBoard. Most assignments will still come out of VCSU MEP.
MicroSoft Career Exploration Program is an opportunity for you to visit the Fargo MicroSoft campus and learn career details. Here is a document describing the program. Here is a link to sign up.

Tests:


The second test will be on Monday March 30. It will be on the decision statements, if and switch, as well the incidentals we have seen: scope, bool type, enumerations.
The final examination will take place on Monday, May 11 at 8:00. Sorry!

Programming assignments


Most of the C++ assignments will be given to you by an agent in the MOO.
Install Rad Studio.
You must have a Windows machine for this course.
If you are having problems with either VCSU MEP or Rad Studio you need to contact the instructor immediately.

Handing in C++Builder console programs.
The agents are in order:
Fred(1/31 - 2/3), Fernanda(1/31 - 2/7), Phoebe(2/5 - 2/14), Frank (2/26 - 3/9), Francis(3/9 - 3/23), Fleta , Floyd , Fifi and Fiona .
If the agent is followed by a date that is the due date. If followed by two dates then the first is when the lesson should be complete and the second when the program is due. A very few of the agents give an assignment but it can be skipped. This will be clearly noted below when it happens.
There are many agents other than the above, if any other agent gives you an assignment, report it to the instructor.
We will not use TorqueMOODa this year, so you may ignore any reference to him. Sometimes he can be a problem, so if the MOO will not let you into an exhibit that you need to do, then contact the instructor.

Presentations

Presentations will generally be posted here prior to class.
The first presentation is not usually posted, but includes things about instructor and class mechanics.
Yet to do.
Another, completely different look at loops.
Completed.
Online classes due to Corona Virus Pandemic. These have recordings on BlackBoard:
The week of 3/23-3/25
The while and do while loops. Recorded after class time.
There is a recording for a demonstration on debugging tools inside Rad Studio.
The for loop demonstration project.
The ever popular for loop.
These were given live:
The completed widget demonstration.
Loop introduction.
The start of the widget demonstration.
More widgets.
Anything below this should be covered on the second test.
The switch case statement.
The enumeration type.
The finished pay check demonstration.
The pay check demonstration.
Handing in C++Builder Windows programs. Also Visual Studio.
The problem solving technique of stepwise refinement.
Fourth presentation on if.
Numeric precision and errors.
Third presentation on if.
The quadratic solution demo from 2/26. Uses elsees.
Second presentation on if.
The quadratic solution demo from 2/24.
Flow of control.
First presentation on if.
Building windows programs in C++Builder.
AN introduction to objects.
The console and GUI paradigms considered.
Anything below this should be covered on the first test.
Other side effect operators.
Using functions with emphasis on math library.
Named constants.
Tracing.
The assignment statement.
The assignment statement again.
The Cast.
Types.
Our second console program.
Our first console program - Hello World.

Examples and other files

Important documents overviewing the course:

The syllabus for CS 160.

The cs 160 course outline
Curt's desktop has Skype installed. Need to speak to him: curt.hill.vcsu is the Skype account. Generally, you need to first ask to be a contact and then you should be OK. (If your Skype name does not contain your real name, you should insert a message to that effect. I receive many unsolicited contact requests.) Lets talk!

Articles


Coding skills are needed for non-IT majors
Does the slow programmer do a better job?

Other links

Stroustrup on where C++ fits in the pantheon of programming languages.

A list of companies that use C++.
C++ compilers.
On the problems with Visual Studio C++.

The VCSU-MEP is an interactive museum of information and exercises concerning Computer Science classes. In this class this system will function as the textbook. There is a C++ wing to the museum. The Java Web client can be used at: VCSU-MEP using the Java client. Entering the MOO requires a login and password, which you should have received by email. You should use Java enabled browser and disable popup suppression for this site. You may have to activate the Java plugin and accept the security warning. You may want to read the Introduction to VCSU-MEP This is a Microsoft Word format document.

The Lesson Map of VCSU-MEP lists all the lessons, the shortest path to the lesson and the exhibits within the lesson.

NASA C Coding Standards.

The Live Coding. See people code in real time.

Computer Simulator: A simple computer. This graphically simulates a simple 100 memory cell computer. It demonstrates the fundamentals of computer execution such as machine language and the fetch execute cycle. It is a Java applet. Click here to read instructions and execute applet.

The Development of the C Language by Dennis Ritchie.

The International Obfuscated C Code Contest rides again. Is this good or bad?

Bjarne Stroustrup's FAQ on C++ Standards.

The C++ Precedence Chart

Return links

Return to Curt Hill's home page.

Last time I updated this page: July 15, 2020.