CS101 Final Exam #3 Topics
The final exam will be a take home exam. It will
be posted online Monday at 4:00 PM and you will have until Tuesday at 4:00 PM to
turn it in via Blackboard (just like you are submitting a homework
assignment). There will be some short answer questions and
mostly programs to write in Alice. I will be available for any questions
during the final exam period of 1:00 -
4:00 PM if
any question is unclear.
The final exam is really a third midterm. It is
worth the same amount as the other midterms and
only covers material
since the second midterm.
Theory of
Computation
-
Understand what a finite state
automaton is;
-
Given a finite state automaton, describe what it
is doing
-
Given a problem, create a finite state automaton to
model it
-
Understand what a
grammar is;
-
Concept of a
Turing Machine
-
The Halting Problem and why it
is unsolvable
-
What does it mean for a problem to be in class P or in
class NP
Artificial
Intelligence
- Know what the Turing Test is
- The Physical Symbol hypothesis
- Concept of state space search
- Searching for a solution to the water jug problem
- How computers play games like chess by looking
ahead multiple moves
- Concept of a neural network
- Concept behind genetic algorithms
Alice
- Understanding the Alice IDE (the program) with the
different windows for events, properties, object tree, etc.
- Generating a sequence of instructions corresponding
to a scene
- Basic methods for each object (move, turn, roll) from
perspective of the object
- Properties of objects
- Flowcharts
- Storyboards
- Using mathematical expressions
- Functions on the world object and other objects
- distance to, <, >, ==, etc.
- If-else statements
- Using relational operators from the world
function
- Loop and While
- Nested blocks (blocks within blocks, e.g. an if
statement inside a loop)
- Random numbers
- Concept of inheritance
- Creating methods
- Where methods should be created, world vs. object
- Using parameters with a method;
specifying the type; sending in values for the parameters when invoking the
method
- Multiple parameters
- Creating and using events