#lang racket
(require csc151)
(require plot)

;;; File:
;;;   exam2.rkt
;;; Authors:
;;;   The student currently referred to as 000000
;;;   Charlie Curtsinger
;;;   Fahmida Hamid
;;; Contents:
;;;   Code and solutions for Exam 2 2018F
;;; Citations:
;;;

;; +-----------+------------------------------------------------------
;; | Problem 1 |
;; +-----------+

; Time Log:
;   Date        Start   Finish   Elapsed   Activity

; Time Spent: 

; Citations:

; Solution:

; a.
;;; Procedure:
;;;   median3
;;; Parameters:
;;;   
;;; Purpose:
;;;   
;;; Produces:
;;;   
;;; Preconditions:
;;;   
;;; Postconditions:
;;;   

; b.
(define median3-if
  (lambda (x y z) 0)) ; STUB

; c.
(define median3-cond
  (lambda (x y z) 0)) ; STUB

; d.
(define median3-short-circuit
  (lambda (x y z) 0)) ; STUB

; Examples/Tests:
#|

|#

;; +-----------+------------------------------------------------------
;; | Problem 2 |
;; +-----------+

; Time Log:
;   Date        Start   Finish   Elapsed   Activity

; Time Spent: 

; Citations:

; Provided Code:

; Solution:

;;; Procedure:
;;;   select-columns
;;; Parameters:
;;;   
;;; Purpose:
;;;   
;;; Produces:
;;;   
;;; Preconditions:
;;;   
;;; Postconditions:
;;;   
(define select-columns
  (lambda (table column-indices)
    null)) ; STUB

; Examples/Tests:
#|

|#

;; +-----------+------------------------------------------------------
;; | Problem 3 |
;; +-----------+

; Time Log:
;   Date        Start   Finish   Elapsed   Activity

; Time Spent: 

; Citations:

; Solution:

; Complete parts a, b, and c below. You only need to show the cleaned-up and
; reformatted procedure once.

;; Procedure:
;;;   
;;; Parameters:
;;;   
;;; Purpose:
;;;   
;;; Produces:
;;;   
;;; Preconditions:
;;;   
;;; Postconditions:
;;;   
(define s (lambda (l) (let ([a (iota (length l))]) (let ([a (map
even? a)]) (let ([a cadr] [b (map list l a)]) (let* ( [c (filter a b)])
(list (map car c) (map car (filter (negate cadr) b)))))))))

; d. Explain how this procedure achieves its goal.



; Examples/Tests:

#|

|#

;; +-----------+------------------------------------------------------
;; | Problem 4 |
;; +-----------+

; Time Log:
;   Date        Start   Finish   Elapsed   Activity

; Time Spent: 

; Citations:

; Solution:

; Examples/Tests:
#|

|#

;; +-----------+------------------------------------------------------
;; | Problem 5 |
;; +-----------+

; Time Log:
;   Date        Start   Finish   Elapsed   Activity

; Time Spent: 

; Citations:

; Solution:

;;; Procedure:
;;;   
;;; Parameters:
;;;   
;;; Purpose:
;;;   
;;; Produces:
;;;   
;;; Preconditions:
;;;   
;;; Postconditions:
;;;   
(define count-occurrences
  (lambda (lst val) 0)) ; STUB
