Functional Problem Solving (CSC 151 2015F) : EBoards
Primary: [Front Door] [Schedule] - [Academic Honesty] [Disabilities] [Email] - [FAQ] [Teaching & Learning] [Grading] [Taking Notes] [Rubric] [Remote Access]
Current: [Assignment] [EBoard] [Lab] [Outline] [Reading]
Sections: [Assignments] [EBoards] [Labs] [Outlines] [Readings] - [Examples] [Handouts]
Reference: [Setup] [VM] [Errors] - [Functions A-Z] [Functions By Topic] - [Racket] [Scheme Report (R5RS)] [R6RS] [TSPL4]
Related Courses: [Curtsinger (2015F)] [Davis (2013F)] [Rebelsky (2015S)] [Weinman (2014F)]
Misc: [Submit Questions] - [SamR] [Glimmer Labs] [CS@Grinnell] [Grinnell] - [Issue Tracker (Course)]
Overview
section. For others, it will be intuitive. We will spend
a few weeks trying to make it intuitive for everyone.Should #2 work on any function?
Yes, those were just examples.
Does our procedure *have* to bound the y values?
No. You can assume a 100x200 window.
What's the difference between left and column?
leftrepresents the left edge of an area. It's a column, but columns can take on other values.
When I'm picking the random column and row, what range should I choose from?
For the column, it should be a number between left and left+width-1.
But random only gives me a value between 0 and n-1.
Think about how to transform one range to another. (Hint: Addition.)
Do I need to document the procedures in part 3?
Yes. But you can use just 4P's.
Important lesson 1: If you have something you think is a list, and you see a dot in the middle of it, it's not a list, and at some point things will probably break.
Important lesson 2: car and cdr don't care whether or not it's a
list, as long as it's created by cons (or is a non-empty list)
Important lesson 3: Computer scientists usually count starting at 0 (for cardinal numbers)
No writeup, but you need to make sure you understand this stuff. It's essential for the rest of the semester.