CSC 151.01, Class 41: Project presentations
Overview
- Preliminaries
- Notes and news
- Upcoming work
- Extra credit
- Questions
- About the presentations
- Lightning presentations
News / Etc.
- I expect you all to attend class on Friday.
Upcoming work
- Exam 4
- Exam due Thursday
- Cover sheets due Friday
- Epilogues due Friday
- Optional final during finals week (Wed 2pm, Thu 9am, or Fri 9am).
Extra credit (Academic/Artistic)
- CS Extras Thursday: Summer opportunities in CS. 4:15 p.m. in Science 3821.
Food at 4:00 in the CS Commons.
- Handouts available for those who can’t make it.
Extra credit (Peer)
- Musical: Next to Normal Friday at 7:30, Saturday and Sunday at 2:30. Tickets no longer at box office. Show up early (Roberts).
Extra credit (Misc)
Other good things
- Stay healthy and sane during week 14.
Questions
- Any more hints on problem 2?
- “Trust the magic recursion fairy.” You’ve determined that
lstis a pair. You tally the rest with(nested-list-tall (cdr lst) pred?). What do you do next? - Any hints on problem 4?
- Use the debugger.
- Follow the steps through by hand.
- Can I have a more comprehensive test suite for problem 4?
- Sure.
(check-equal? (next-larger 1/2 (vector 1 2 3 4 5 6)) 1)
(check-equal? (next-larger 1 (vector 1 2 3 4 5 6)) 2)
(check-equal? (next-larger 3/2 (vector 1 2 3 4 5 6)) 2)
(check-equal? (next-larger 2 (vector 1 2 3 4 5 6)) 3)
(check-equal? (next-larger 5/2 (vector 1 2 3 4 5 6)) 3)
(check-equal? (next-larger 3 (vector 1 2 3 4 5 6)) 4)
(check-equal? (next-larger 7/2 (vector 1 2 3 4 5 6)) 4)
(check-equal? (next-larger 4 (vector 1 2 3 4 5 6)) 5)
(check-equal? (next-larger 9/2 (vector 1 2 3 4 5 6)) 5)
(check-equal? (next-larger 5 (vector 1 2 3 4 5 6)) 6)
(check-equal? (next-larger 11/2 (vector 1 2 3 4 5 6)) 6)
(check-equal? (next-larger 6 (vector 1 2 3 4 5 6)) #f)
(check-equal? (next-larger 13/2 (vector 1 2 3 4 5 6)) #f)
- Can’t you write something more concise?
- Yes. But I thought this was clearer.
- Does
nested-list-tally?have to work correctly if the predicate islist?. - No. It doesn’t have to work for
pair?ornull?either. - How should I get started on problem 3?
- Find out how big the result vector should be. (recursive helper)
- Make a vector of that size.
- Copy you things over (recursive helper).
(vector-set newvec newpos (vector-ref vec pos)). - Do you have hints on problem 6?
- Read the list of topics. That should tell you what
vss!does and give you a clue to the parameters. - Look at how
vss!callsioe. - Sam remembers the names of these two procedures. That may suggest that they have something to do with what the procedures do.
- Make sure to use unordered vectors when you try
vss!andioe. - Any hints on problem 5?
- Problem 5 is incredibly straightforward.
- Problem 5e: The helper is the way to go. When you first call it,
you’ll call
(helper tree null). - On 5d, you’ve thought a bit about ordering.
About the presentations
- I’ll use the clock.
- I realize that there will be some transition time.
- Do your best!
- Plan to take questions (and to ask questions).
Lightning presentations
You can volunteer or our mentors will choose