My general syllabus:
[ syllabus.htm ]
and the CS201
[ syllabus.htm ]
and schedule
[ schedule.htm ]
plus some notes on projects:
[ projects ]
Help with projects and C++: The template file project.cpp:
[ project.cpp ]
plus a demonstration of what a project looks like
[ demo.cpp ]
when done.
Frequently asked questions (and some my answers) about our system here:
[ CS_FAQ.html ]
As the quarter proceeds the "Notes" will be filled in with
your questions and some answers. The whole set is linked into the course web page search to help you answer qustions and review the the material.
[ hello.cpp ]
[ coins1.cpp ]
[ ch02.cpp ]
[ av03a.cpp ]
[ av03b.cpp ]
[ polya.html ]
Fill in the blanks:
[ project.cpp ]
[ demo.cpp ]
Simple programs can be compiled and run at
http://codepad.org/
To access our machines from off campus is possible but not simple.
On a Mac or a Linux box you can open a terminal and use ssh.
On windows download and install "PuTTY". Connect to
jbh3-1.cse.csusb.edu
using your CSE lab user-id. Then use
ssh jb35n-mm
where n is either 9 or 8 and mm is the number of a machine between 1 and 30.
[ projects.html#Working at home with SSH access ]
TBD
Example
[ initials.cpp ]
Exercises:
[ av03.cpp ]
and
[ av03a.cpp ]
(String operations and tracing),
[ av03c.cpp ]
(substrings),
[ av03d.cpp ]
(concatenation),
[ av03e.cpp ]
(concatenation substring and length).
Notes
[ string.html ]
[ luv.cpp ]
[ while0.cpp ]
[ uscor.cpp ]
[ bresenham.cpp ]
[ sqrt1.cpp ]
[ tsqrt.cpp ]
[ tsqrt1.cpp ]
[ sqrt2.cpp ]
[ tsqrt2.cpp ]
[ r62.cpp ]
[ piman.cpp ]
[ terminator.cpp ]
[ terminator2.cpp ]
[ mtable.cpp ]
[ functions.html ]
[ function.help ]
[ function.cpp ]
[ a09.cpp ]
[ fred.cpp ]
[ fac.cpp ]
[ mini.bad ]
[ mini.cpp ]
[ maxi.bad ]
[ maxi.cpp ]
[ quad.bad ]
[ quad.cpp ]
[ quad2.cpp ]
[ swap.bad ]
[ swap.cpp ]
[ order.bad ]
[ order.cpp ]
[ av07.cpp ]
[ av26.cc ]
[ av27.cc ]
[ 03b.cc ]
[ 03c.cc ]
[ 03d.cc ]
TBD
[ ch06.html ]
[ animals.cpp ]
[ f8.cpp ]
[ ex15.cpp ]
[ ex15a.cpp ]
Notes:
[ vectors.html ]
Examples:
[ bar.cpp ]
(salary bar chart)
[ ex18a.cpp ]
(find biggest number)
Putting a vector inside a class: a class that stores a
sample and calculates statistics:
[ e19.cpp ]
Example of a 2 dimensional array:
[ demo2d.cpp ]
An unsafe array wrapped up to make a safe class:
[ array.cpp ]
Many of the quizzes are complete C++ programs with a
name that ends ".cpp". You can download
them in the usual way (right click, shift click, or open and save).
[ q05.cpp ]
[ q06.cpp ]
[ q08.cpp ]
[ q11.cpp ]
Here are some more old quizzes.
Quizzes 3 and 4:
[ q03.htm ]
[ q04.htm ]
Quiz 06 with errors
[ q06.bad ]
, corrected
[ q06.cpp ]
, and the differences between the bad and the good:
[ q06.delta ]
(as generated by the command
diff q06.bad q06.cpp
)
Answer to quiz 07 is in
[ ch04b.htm ]
Quiz 10: Bad
[ q10.bad ]
and fixed:
[ q10.cpp ]
Quiz 10: Fill in blanks in
[ q12.set ]
giving
[ q12.cpp ]
[ c++.is.hard.txt ]
(Mail)
[ function.help ]
[ function.cpp ]
[ c++.stream.cpp ]
[ ccc.html ]
[ c++.html ]
[ C++.FAQ.txt ]
[ C++.libraries.FAQ.txt ]
[ C.FAQ.txt ]
[ http://cse.csusb.edu/dick/doc/ ]
From the CS201 book
[ examples ]
- and other
[ examples ]
. . . . . . . . . ( end of section C++) <<Contents | End>>
[ uml.html ]
A Beginners guide to UNIX
[ http://www.dafydd.net/soft/unix/uguide/ ]
List of UNIX Commands:
[ unix.commands ]
[ timing.a.program ]
[ unix.commands.html ]
How to become a power user:
(1) Join the CSci Club, (2) take this class
[ http://cse.csusb.edu/dick/cs360/ ]
Starting:
[ vi.txt ]
[ vi.commands ]
To be downloaded and printed:
[ vi1.gif ]
and
[ vi2.gif ]
Plus
[ vi_charts.pdf ]
(first page in PDF (Ok for Linux)) and
[ vi_charts.ps ]
(Postscript).
More advanced stuff:
[ vi.notes.html ]
[ vi.FAQ ]
Here are some videos illustrating how to set up and Microsoft's
Visual Studio to compile and test on a a Windows PC. However they also
tell you how to do Dr. Turner's laboratories in a ection of CSE201 that uses Subversion
and Blackboard.
- Lab 1 on Windows, Part 1
[ watch?v=9Ogzs0M5yL4 ]
- Lab 1 on Windows, Part 2
[ watch?v=kJIkNerZ1PU ]
- Lab 1 on Windows, Part 3
[ watch?v=xKjYcGuA8_U ]
- Lab 1 on Windows, Part 4
[ watch?v=hqP73hI7XF0 ]
Here is a fun and useful guide to the words and phrases
that computer people use. I think it is both comprehensive, funny,
pretty accurate:
- Jargon::= See http://www.tuxedo.org/~esr/jargon/html/The-Jargon-Lexicon.html.
Enjoy!
- AKA::=Also Known As.
- abstract::=Describes something that is kept simple by omitting distracting details.
- analysis::=documenting what the problem is, in terms of what is given and what is desired plus the operations and formulae that can be used.
- class::=A description of a set of similar objects that perform similar operations and encapsulate more or less similar data.
- code::verb=Translating a program design into a computer programming language and testing to remove any errors.
- data_object::=An abstract view of an object as a container of information rather than as an active participant on the piece of software.
- design::=Producing a step-by-step or piece-by-piece description of how an analyzed problem is to be solved.
- emoticon::=One of a number of ASCII characters that encode emotional states of the writer. :-) indicates a joke and :-( unhappiness.
- encapsulated::=Something that is protected from accidental tampering. Something that someone else is responsible for. None of our business at this time.
- FAQ::=Frequently Asked Question.
- IMHO::=In my humble opinion.
- interface::=A abstract description of how an object is used: created, operated on, and deleted.
- KISS::=A slogan used by computer people when somebody comes up with a complicated way of doing something when a clever solution would be simpler.
- kludge::=A design, thing, or plan that works but is an inelegant because of time or other problems. Example: wearing glasses that have been repaired with duct tape.
- object::=Something that is manipulated by operations and contains encapsulated information and processing.
- operations::=Actions that an object will perform when requested.
- TBA::=To Be Announced.
- TLA::=Three Letter Acronym.