cws/cw03.tex
changeset 306 1877cc717291
parent 296 12dc251fc47e
child 307 3c7ac7836e4f
equal deleted inserted replaced
305:e745f6e1ebf6 306:1877cc717291
    16                hlabelformat=\arabic{ranklabel},
    16                hlabelformat=\arabic{ranklabel},
    17                vlabelformat=\arabic{filelabel}}
    17                vlabelformat=\arabic{filelabel}}
    18 
    18 
    19 \mbox{}\\[-18mm]\mbox{}
    19 \mbox{}\\[-18mm]\mbox{}
    20 
    20 
    21 \section*{Coursework 8 (Scala)}
    21 \section*{Part 8 (Scala)}
    22 
    22 
    23 \mbox{}\hfill\textit{``The problem with object-oriented languages is they’ve got all this implicit,}\\
    23 \mbox{}\hfill\textit{``The problem with object-oriented languages is they’ve got all this implicit,}\\
    24 \mbox{}\hfill\textit{environment that they carry around with them. You wanted a banana but}\\
    24 \mbox{}\hfill\textit{environment that they carry around with them. You wanted a banana but}\\
    25 \mbox{}\hfill\textit{what you got was a gorilla holding the banana and the entire jungle.''}\smallskip\\
    25 \mbox{}\hfill\textit{what you got was a gorilla holding the banana and the entire jungle.''}\smallskip\\
    26 \mbox{}\hfill\textit{ --- Joe Armstrong (creator of the Erlang programming language)}\medskip\bigskip
    26 \mbox{}\hfill\textit{ --- Joe Armstrong (creator of the Erlang programming language)}\medskip\bigskip
    27 
    27 
    28 \noindent
    28 \noindent
    29 This coursework is about searching and backtracking. You are asked to
    29 This part is about searching and backtracking. You are asked to
    30 implement Scala programs that solve various versions of the
    30 implement Scala programs that solve various versions of the
    31 \textit{Knight's Tour Problem} on a chessboard. The preliminary part is
    31 \textit{Knight's Tour Problem} on a chessboard. The preliminary part is
    32 due on  \cwEIGHT{} at 4pm; the core part is due on \cwEIGHTa{} at 4pm.
    32 due on  \cwEIGHT{} at 4pm; the core part is due on \cwEIGHTa{} at 4pm.
    33 Note the core, more advanced, part might include material you have not
    33 Note the core, more advanced, part might include material you have not
    34 yet seen in the first three lectures. \bigskip
    34 yet seen in the first three lectures. \bigskip
   157             setpieces={Ng7, Nb2},
   157             setpieces={Ng7, Nb2},
   158             boardfontsize=12pt,labelfontsize=9pt]}
   158             boardfontsize=12pt,labelfontsize=9pt]}
   159 
   159 
   160 \subsection*{Reference Implementation}
   160 \subsection*{Reference Implementation}
   161 
   161 
   162 This Scala assignment comes with three reference implementations in form of
   162 This Scala part comes with three reference implementations in form of
   163 \texttt{jar}-files. This allows you to run any test cases on your own
   163 \texttt{jar}-files. This allows you to run any test cases on your own
   164 computer. For example you can call Scala on the command line with the
   164 computer. For example you can call Scala on the command line with the
   165 option \texttt{-cp knight1.jar} and then query any function from the
   165 option \texttt{-cp knight1.jar} and then query any function from the
   166 \texttt{knight1.scala} template file. As usual you have to
   166 \texttt{knight1.scala} template file. As usual you have to
   167 prefix the calls with \texttt{CW8a}, \texttt{CW8b} and \texttt{CW8c}.
   167 prefix the calls with \texttt{CW8a}, \texttt{CW8b} and \texttt{CW8c}.