Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
52 Cards in this Set
- Front
- Back
Given
|
an Initial situation
|
|
Problem
|
A given where it is not immediately obvious how to reach the goal
|
|
Goal
|
A desired outcome
|
|
Resources
|
Things that can be used to reach a goal and impose restraints
|
|
Understanding a problem
|
means turning an ill-defined problem into a well defined problem stated clearly and unambiguously
|
|
4 components of a well defined problem
|
"Givens. Resources
|
|
Constraints
|
These are limitations on what you are allowed to do is solving a particular problem
|
|
Defining Boundaries
|
Establishing the limits or rules about what can or cannot be done when solving a particular problem. A type of Constraint.
|
|
Lateral Thinking
|
Is used to challenge assumptions or establish facts and rules to define the boundaries of problem solving
|
|
What is meant by defining Boundaries
|
Establishing the limits or rules about what can or cannot be done when solving a particular problem. A type of Constraint.
|
|
Why is lateral thinking useful in solving problems
|
Is used to challenge assumptions or establish facts and rules to define the boundaries of problem solving
|
|
Top Down Design
|
is a tool that breaks a problem into a series of smaller problems (sub problems ) that are easier to work on.
|
|
Hierarchy Chart
|
Used in top down design when each smaller problem is represented by a box or procedure in a diagram
|
|
Module
|
A self contained entity that results when a problem is divided into sub problems: each module is a sub problem.
|
|
Stepwise Refinement
|
The process of breaking a problem down through successive steps into smaller problems
|
|
Structure table
|
An indented numbered list of steps produced by Stepwise Refinement
|
|
State 5 considerations in planning a solution to a problem
|
"i) What strategies will you apply?
|
|
Computation
|
"the act or process of calculating or determining something by mathematical
|
|
Computability
|
Measures what can and cannot be computed
|
|
Computing
|
is the study or natural and artificial information resources
|
|
Artificial intelligence
|
A branch of computing that studies the use of computing to perform computational processes normally associated with Human Intellect
|
|
Algorithm
|
"A description independent of any programming language of a process that achieves some task.
|
|
"Solving a problem ""Deterministically"" "
|
means without guessing a solution before confirming it.
|
|
The purpose of an Algorithm
|
is to communicate a method or process of computation to a human not to a computer
|
|
Program
|
a description in a programming language of a process that solves a problem or acheives some useful purpose.
|
|
What is the difference between an Algorithm and a Program.
|
An algorthm is a description of a process. Any algorithm can be programmed in many different programming languages
|
|
Finite State Machine (FSM)
|
"a machine that consists of a fixed set of possible states
|
|
State Transition Diagrams (STD)
|
"A way of describing an FSM graphically.
|
|
why are FSM useful?
|
"One reason is that they can recognise sequences.
|
|
what is a FSN with NO OUTPUTS called?
|
A Finite State Automaton (FSA)
|
|
How do you distingish the Initial (start) of a FSM?
|
"All FSM's have an initial state and one or more accepting (or goal) states.
|
|
How do you distingish the accepting (Goal) states of an STD.
|
"All FSM's have an initial state and one or more accepting (or goal) states.
|
|
Mealy Machines
|
"These are FSD with outputs and usually no accepting states.
|
|
State Transition Table
|
shows the effect on the current state of an FSM of partcular inputs and any corrosponding outputs
|
|
Decision Table
|
A table that shows the outcome for a given logical condition.
|
|
Algorithm
|
"A description
|
|
Program
|
A description in a programming Language of a process that acheives some useful result
|
|
Sequence
|
Consecutive steps or groups of steps processed one after another in the order that they arise
|
|
Selection
|
A decision making step in an algorithm
|
|
Repetition or Iteration
|
"A step or sequence of steps that are repeated until some condition is statisfied
|
|
what are the 4 major steps in constructing an algorithm?
|
"Identify the problem inputs
|
|
Assignment
|
an operation that assigns a value to a Variable
|
|
Variable
|
a location in memory that contains one or more data values
|
|
what symbol is used to asign a value to a variable
|
a left pointing arrow ß
|
|
Structured English
|
A very restricted subset of the English Language used to write a Pseudocode algorithm
|
|
Pseudocode
|
code that resembles a programming language but that uses less strict syntax to express and algorithm and is independent of any real programming language
|
|
Two tips for writing good algorithms
|
"Use meaningful names for variables
|
|
Structured English Command statements
|
"these usually start with a verbs eg. SET
|
|
Structured English Selection statements
|
"IF - THEN
|
|
Sttructured English Repetition statements
|
"REPEAT UNTIL
|
|
Problem Flow Charts
|
Is a diagram that shows the sequence of operations to solve a problem.
|
|
Hand trace
|
"a desk check or dry run of an algorithm.
|