An annotated version of the
Sequence ADT that describes the structure of a stand-alone report that
you are to use for reports 3, 4 and 5.
About course exams
Exam questions can be based on the following sources: (1) the textbook(s),
(2) readings, (3) lectures, (4) reports, (5) exercises, and (6) on-line notes
and slides. They are based on topics from the beginning of the year up to, and
including, the class before the exam.
Consider all concepts and terminology used in the text book, reports, slides
and lectures and ask the typical questions - how, why, when, where and what -
individually and in combination. In particular, variations are based on
"describe", "explain", "define", "what is meant by", etc.
Exam instructions for class exams
and the final exam. It is useful to become familiar with them.
binaryTree.pl — an example definition of a binary tree
chatBasis.pl — the support environment used to produce programs such
as in chatExample.pl.
chatExample.pl — an example program demonstrating how English
sentences can be used to construct Prolog queries.
chatExampleInput.text — an example input text file for chat;
includes instructions on how to redirect input & output to and from
files.
cuttest.pl — examples that show the effects of the cut operator '!'.
engFreDictionary.pl — example predictes showing how you can define
prefix, postfix and infix operators in Prolog.
examplePlUnitTesting.pl — an example that shows how, within one file,
Prolog predicates can be defined, and tested using PlUnit.
listUtilities.pl — Gives definitions of some predicates defining
utility operations on lists.
maze.pl — example predicates showing show a graph search program can
be developed and various problems that can occur.
operator.pl — operator examples.
ring.pl — example predicates based on Wagner's ring cycle operas that
you can use to experiment with.
sendMoreMoney.pl — Crypt arithmetic problem done with Basic
Prolog and using CLP. Multiple variations show that checking constraints
at appropriate points in a constrained logic program can significantly
increase the efficiency of an algorithm.
set_print_options.pl — a predicate that changes the amount of a list
that will be displayed.
sortingAlgorithms.pl — A selection of sort algorithms: bubble, binary
tree, insert, selection, merge, quicksort.
tower.pl — example predicates showing how compound structures are used
to build data structures.
zebra.pl — The traditional "Who owns the zebra" logic problem written
in two different ways.