56 lines
1.3 KiB
Racket
56 lines
1.3 KiB
Racket
#lang racket
|
|
|
|
(require "group-scheduling.rkt")
|
|
|
|
;; define your group
|
|
|
|
(define some-group '("Fidelia" "Marcus" "Donnette" "Garrett" "Lida" "Reagan" "Myrta" "Ginny" "Juliann" "Maxwell" "Serena" "Chante" "Wen" "Malcom" "Lizbeth" "Aleida"))
|
|
|
|
;; the 'print-rounds' function determines if a particular arrangement of meetings
|
|
;; will nable everyon ein th egrouo to have met once.
|
|
|
|
;; it's given a group (i.e. a list of names) and the number of rounds of 2, 3 or 4
|
|
;; first. number of rounds of pairs
|
|
;; second. number of rounds of 3 person groups
|
|
;; third. number of rounds of 4 person groups
|
|
|
|
|
|
;; show the scenario for week 1
|
|
(print-test-rounds some-group 2 1 1)
|
|
|
|
|
|
;; begin with seting up the meetings
|
|
(start-meetings some-group)
|
|
|
|
;; make a few rounds...
|
|
(print-rounds-of-2 some-group 2)
|
|
(print-rounds-of-3 some-group 2)
|
|
(print-rounds-of-4 some-group 1)
|
|
(print-all-meetings some-group)
|
|
|
|
;; and again...
|
|
(reset-meetings some-group)
|
|
|
|
(print-rounds-of-2 some-group 2)
|
|
(print-all-meetings some-group)
|
|
|
|
|
|
;; ...and by end of week 2
|
|
(printf "\nweek 1 & week 2 (scenario 1)\n\n")
|
|
(print-test-rounds some-group 5 2 1)
|
|
|
|
(printf "\nweek 1 & week 2 (scenario 2)\n\n")
|
|
(print-test-rounds some-group 4 3 1)
|
|
|
|
(printf "\nweek 1 & week 2 (scenario 3)\n\n")
|
|
(print-test-rounds some-group 4 2 2)
|
|
|
|
(printf "\nweek 1 & week 2 (scenario 4)\n\n")
|
|
(print-test-rounds some-group 4 1 3)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|