Class 1 ‑ | Tue 26‑1‑2021 | Quick introductions, syllabus, policies, what the class is all about. Why computers use binary instead of decimal. Working out what six times nine is. Sometimes the simplest things are the hardest to do. Lab sections moved to MM 312. HKN free tutoring via umiami.hkn@gmail.com | ||||
Class 2 ‑ | Thur 28‑1‑2021 | Types and operations. Defining and using functions. A sample of the first test. | ||||
Class 3 ‑ | Tue 2‑2‑2021 | A couple of simple graphical programs. Solving quadratics again, three versions. Conquering repetition with recursion. | ||||
Class 4 ‑ | Thur 4‑2‑2021 | Controlling repetition: Today's examples. | ||||
Class 5 ‑ | Tue 9‑2‑2021 | A couple of functions, Plotting one, and plotting them both. Investigating the range of ints and doubles. A ridiculously over-long program, and a vast improvement on it. | ||||
Class 6 ‑ | Thur 11‑2‑2021 | Finishing Tuesday's big example. A program that writes another program. Functions that return values: Factorial and Sum of a series. Introducing the array, Searching an array of animals. | ||||
Class 7 ‑ | Tue 16‑2‑2021 | More on patterns of recursion. Searching, tarting points: one, two. Straightforward searches, and the Binary Chop search. | ||||
Class 8 ‑ | Thur 18‑2‑2021 | How fast binary chop is. Detecting a failed search. Creating a dictionary. A guessing game, The computer plays the game. Calculating square roots, preparation, and the program. The big array was totally unnecessary. | ||||
Class 9 ‑ | Tue 23‑2‑2021 | Finding the square root of a double, Viewing the collatz sequence, Graphing the lengths of the collatz sequences, Some basic encryption. | ||||
Class 10 ‑ | Thur 25‑2‑2021 | Encryption/decryption finished; "abc" is not a string yet. A fractal star by drawing a special triangle. A surprise fractal. | ||||
Class 11 ‑ | Tue 2‑3‑2021 | Brownian motion, a simulation that crashes. Introducting the while loop and break. Today's programs. | ||||
Class 12 ‑ | Thur 4‑3‑2021 | All about using Unix. The slightly unfinished prime listing program. | ||||
Class 13 ‑ | Tue 9‑3‑2021 | Preparation for the test. | ||||
Class 14 ‑ | Thur 11‑3‑2021 | First mid-term exam. All on-line, using Respondus lock-down browser. A sample test, and another sample. | ||||
Class 15 ‑ | Tue 16‑3‑2021 | Introducing variables. Today's examples. | ||||
Class 16 ‑ | Thur 18‑3‑2021 | <iomanip>
The times table again. Using variables to search for animals, version 1, version 2, version 3. Our own sine function. Update operators and the for loop. | ||||
Class 17 ‑ | Tue 23‑3‑2021 | Using for loops: animal search, and
sine calculations. Reversing the order of an array, and introducing reference parameters. Converting a file to all-caps, here's the file. | ||||
Class 18 ‑ | Thur 25‑3‑2021 | Peter Pan. Counting all the "the"s in a story, Counting occurrences of all words, Simple encryption again, and whole sentences, and rot13. | ||||
Class 19 ‑ | Tue 30‑3‑2021 | What we learned from the test. | ||||
Class 20 ‑ | Thur 1‑4‑2021 | A chemistry data file, Processing chemical formulae, step 1, step 2, step 3, step 4, step 5, step 6. | ||||
Class 21 ‑ | Tue 6‑4‑2021 | Introducing objects. Improving the chemistry calculator, step 7, step 8, step 9. The final step still has some errors in it. | ||||
Class 22 ‑ | Thur 8‑4‑2021 | Review day, files and arrays and a bit of searching. | ||||
Class 23 ‑ | Tue 13‑4‑2021 | Test day: Files, arrays, and searching. A sample, and another sample. | ||||
Class 24 ‑ | Thur 15‑4‑2021 | Some debugging practice; back to the chemistry calculator, completing it and making it recursive:
step 10,
step 11. When 0.1 * 10000000 might not equal 1000000. | ||||
Class 25 ‑ | Tue 20‑4‑2021 | String operations. Showing C++ how to work with fractions. | ||||
Class 26 ‑ | Thur 22‑4‑2021 | A simulation - the boy and the bull. | ||||
Class 27 ‑ | Tue 27‑4‑2021 | Teaching C++ about complex numbers, and discovering the Mandelbrot set. | ||||
Class 28 ‑ | Thur 29‑4‑2021 | Preparing for the final. |
Lab 1, | Tue 2 Feb - Thur 4 Feb | |||||
(pdf) | Using visual C++ to run programs; drawing stars and stick figures. | |||||
Lab 2, | Tue 9 Feb - Thur 11 Feb | |||||
(pdf) | Divide and conquer: building big programs from little functions. | |||||
Lab 3, | Tues 16 Feb - Thur 18 Feb | |||||
(pdf) | Controlling repetition in programs. Part C2 is for extra credit only. | |||||
Lab 4, | Tue 23 Feb - Thur 25 Feb | |||||
(pdf) | A video game: Space Invaders with a cannon. | |||||
Lab 5, | Tue 2 Mar - Thur 4 Mar | |||||
(pdf) | A real-time animated clock application. | |||||
Lab 6, | Tue 9 Mar - Thur 11 Mar | |||||
(pdf) | Generating calendars and using Unix. | |||||
Lab 7, | Tue 16 Mar - Thur 18 Mar | |||||
(pdf) | A randomly generated Happy Street Scene. | |||||
Lab 8, | Tue 23 Mar - Thur 25 Mar | |||||
(pdf) | An interactive desk calculator. | |||||
Lab 9, | Tue 30 Mar - Thur 1 Apr | |||||
(pdf) | Meteorological data processing and visualisation. the data files | |||||
Lab 10, | Tue 6 Apr - Thur 8 Apr | |||||
(pdf) | Database programming under Unix. The special timing function. | |||||
Lab 11, | Tue 13 Apr - Thur 15 Apr | |||||
(pdf) | A robot seaching for treasure in a maze.
sample maze;
alternate sample. | |||||
Lab 12, | Tue 20 Apr - Thur 22 Apr | |||||
(pdf) | An automatic robot: he turned into a video game. |