EEN318, Programming III, Autumn 2008

Assignments

  1. (due Thursday 18th September) Do questions 1 and 3a of last semester's EEN218 final.
    Questions 1a, 1b, 1c, 1d, and 3a should be combined to make a single program.
    Write and test the programs using your "rabbit" unix account. Both programs should expect the user to type in a sequence of strings, sort those strings by the appropriate method, then print out the sorted list. That way you can test them properly.
  2. (due Thursday 25th September) (a)Do question 2 of last semester's EEN218 final.
    As before, the parts should be combined to make a single program.
    (b)Add a self-timing facility to both of your programs. They will need to generate their own random lists to sort. Gather enough experimental data to verify our theoretical calculations for the running times.
  3. A program that can read any of the digital elevation model files here, and display the contents in a meaningful way. Then read the alphaplaces file drawing a dot for all reasonably large towns that lie within the bounds of the picture.
  4. (due 16th November) Building on the previous assignment, allow the user to mouse-click on two points within the map. Convert those pixel locations to latitude and longitude and search the locations file (locations, not alphaplaces) for the closest locations. Attempt to find a path from one to the other by simply following the road that is closest to going in the right direction repeatedly until the exploration either succeeds or gets stuck. Draw each road as it is followed.
  5. (due 26th November) Building on the previous assignment, allow the user to type the names of two places, and find them in the alphaplaces file. Use that information instead of the mouse-click to determine the desired latitudes and longitudes and perform the same exploration as before. Your program should do a reasonably good job of finding places even if they are misspelled.
  6. (due 10th December) Improve the previous assignment so that it finds a good, short route (preferable the shortest), draws that route on the map, and displays the total length in miles.

Notes about Prerequisite Topics

  1. objects.html introductory stuff about objects, classes, structs
  2. fractions.html more of that
  3. introtoclasses.html and more
  4. startobject2.html and even more
  5. growarray.html Arrays that grow (vectors)
  6. Goldfish Club, (older C-based version just for interest)
  7. FlexArray.doc Simple C++ vector of strings with "friends"
  8. GrowingArrays.doc Smaller examples of that
  9. declarations.html Complicated declarations in C++

Class History