Module 1 Flashcards
yeah
a sequence of unambiguous instructions
for solving a problem.
algorithm
any well-defined computational procedure that
takes some value, or set of values, as input and produces some value, or set of values, as output.
algorithm
sequence
of computational steps that transform the input into the output.
algorithm
Algorithm Requirements
ü Finiteness
ü Definiteness
ü Clearly specified input
ü Clearly specified/expected output
ü Effectiveness
Problem Development Steps
- Problem definition
- Development of a model
- Specification of an Algorithm
- Designing an Algorithm
- Checking the correctness of an Algorithm
- Analysis of an Algorithm
- Implementation of an Algorithm
- Program testing
- Documentation
T or F
Before you start to work on the the solution the developer, programmer must be able to understand fully the problem statement.
True
Three Elements of Problem Statement
- The Problem Itself
- The Method of Solving the Problem
- The Purpose
Which element of the Problem Statement is stated clearly and with enough contextual detail
to establish why it is important?
The Problem Itself
Which element of the Problem Statement is often stated as a claim or a working thesis?
The Method of Solving the Problem
Which element of the Problem Statement is a statement of objective and scope of the document the writer is preparing
The Purpose
involves the definition of model objectives,
conceptualization of the problem, translation into a computational model, and model testing, revision, and application.
Model Development
an iterative process, in which many models
are derived, tested and built upon until a model fitting the desired criteria is built.
Model Development
T or F
Subsequent modelling work may need to begin the search at the same place as the original model building began, rather than where it finished.
True
All algorithms must satisfy the following criteria:
Input
Output
Definiteness
Finiteness
Effectiveness
An algorithm has zero or more inputs, taken from a specified set of objects.
Input
An algorithm has one or more outputs, which have a specified relation to the inputs.
Output
Each step must be precisely defined; Each instruction is clear and unambiguous.
Definiteness
The algorithm must always terminate after a finite number of steps.
Finiteness
All operations to be performed must be sufficiently basic that they can be done exactly and in finite length.
Effectiveness
In theoretical computer science, __________ of an algorithm is asserted when it is said that the algorithm is correct with respect to a specification.
Correctness
Refers to the input-output behavior of the algorithm.
Functional Correctness
Requires that if an
answer is returned it will be correct
Partial Correctness
Additionally requires that the algorithm terminates.
Total Correctness
A type of mathematical proof that plays a critical role in formal verification because total correctness of an algorithm depends on termination.
Termination Proof
The determination of the amount of time
and space resources required to execute it.
Analysis of Algorithms
T or F
Usually, the efficiency or running time of an algorithm is stated as a function relating the input length to the number of steps, known
as time complexity, or volume of memory, known as space complexity.
True
A series of steps that you expect will arrive at a
specific solution.
Algorithm
T or F
Writing a program is equal to expressing code, that idea ignores and neglects the entire idea of writing code to solve a problem.
False (Not Equal)
The process of executing a program with the
intent of finding errors.
Program Testing
A good _____ is one that has a high probability of finding an error.
Test
Cannot show the absence of errors. It can only
show if errors are present.
Program Testing
For a programmer reliable ________ is always a must.
Documentation
T or F
The presence of documentation helps keep track of all aspects of an application and it improves on the quality of a software product.
True
Main Focuses of Documentation
Development
Maintenance
Knowledge transfer to other developers.
T or F
Successful documentation will make information easily accessible, provide a
limited number of user entry points, help new users learn quickly, simplify the
product and help cut support costs
True
Documentation is usually focused on the following components that make up
an application:
Server environments
Business rules
Databases/files
Troubleshooting
Application installation
Code deployment.
The main characteristics of algorithms are
- Must have a unique name
- Should have explicitly defined set of inputs and outputs
- Well-ordered with unambiguous operations
- Halt in a finite amount of time, Should not run for infinity, Must end at some point
gives a high-level description of an algorithm without the ambiguity associated with plain text but also without the need to know the syntax of a particular programming language.
Pseudocode