EBoard 20: Patterns of Recursion

Approximate overview

  • Admin
  • Lab - Numeric Recursion
  • Next Lab - Patterns of Recursion

Administrative stuff

Introductory notes

  • Please disinfect your keyboard and mouse; there are many colds and such going around campus.
  • I hope to show off your cool analyses on Wednesday.
  • Happy Rainy Day

Upcoming activities

Events

  • 730 pm tonight: Jillian Peterson on The Violence Project in the HSSC.
  • CS Extras Thursday at 4pm: Explainable Planning and Decision Making + Overview of CSE and DCDS Programs at WashU
  • Saturday: Scarlet and Black

Other good things

  • 4:30 pm Tuesday, Women’s Soccer
  • 4:30 pm Wednesday, Men’s Soccer
  • 7pm Wednesday Volleyball
  • 11:00 am Thursday, Math Talk on Summer Research

Upcoming work

  • SoLA 2 Wednesday! A chance to show off all that you’ve learned.
  • No readings for Wednesday.
  • Friday’s reading is likely to change.
  • Lab Writeup from Friday due Wednesday morning.
  • Lab Writeup from Today also due Wednesday morning.

Q&A

Lab: Numeric Recursion

Have a wonderful lab. We’ll be around to help. I’ll probably type random stuff on the eboard, too.

Prep

  • Person nearest the board is A.
  • Person furthest from the board is B.
  • If you are confused about distance, ask a mentor.
  • Continue

Notes During Lab

For powers of 2, I’d suggest using a helper procedure like

;;; (powers-of-2-helper x n) -> list-of integer?
;;;   x : non-negative integer
;;;   n : non-negative integer, at least x.
;;; Computes the powers of two between 2^x (exclusive) and n
;;; Examples
;;;   (powers-of-2-helper 3 16) -> '(8 16)

or

;;; (multiply-by-two x n) -> listof integer?
;;;   x : non-negative integer
;;;   n : non-negative integer
;;; Computes x, 2*x, 2*2*x, 2*2*2*x, ... until we get something bigger 
;;; than n.

In many cases, a recursive helper procedure with an extra parameter makes a big difference. It just requires some thought as to what that helper should be.

The autograder is not working correctly for all of you. I’m not sure why.

Lab: Patterns of Recursion

This lab is *optional*. You should read through it, but need not finish it or submit it.

Prep

  • See above.
  • Make sure that your lab says “Patterns of Recursion”

Notes During Lab

  • Some of the tests are incorrect. Sorry!