
On Sat, Feb 14, 2015 at 4:39 AM, Roelof Wobben
Hello,
After a short break I try to make the next assignment of the CIS 194 course. I do self-study.
Lets say we have 1 disk with 2 pegs then we have this :
type Peg = String. type Move = (Peg, Peg) Hanoi :: Integer -> Peg -> Peg -> [Move]
So I can do this Hanoi 2 a b
Should it be, hanoi :: Integer -> Peg -> Peg -> Peg -> [Move] ? So, hanoi n a b c hanoi 2 "a" "b" "c" - You have n disks at 'a' peg in right order(bigger is on bottom). - n should be >= 2. - You have to move all disk from 'a' to 'b'. - You can use 'c' as your temporary place. I've done this as, - write 'hanoi 2 "a" "b" "c" - write 'hanoi 3 "a" "b" "c" - write 'hanoi 4 "a" "b" "c" - find some common pattern
I do not see how I can tell that the disk can move from a to b
Output of hanoi is 'move plan'. It does not actually do somthing. [ ("a", "b") , ("a", "c") ] means, - move disk on top of "a" peg to "b" - move disk on top of "b" peg to "c"