Module 1 Flashcards
a sequence of unambiguous instructionsfor solving a problem.
algorithm
any well-defined computational procedure thattakes some value, or set of values, as input and produces some value, or set of values, as output.
algorithm
sequenceof 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 FBefore 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 detailto 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 modelsare derived, tested and built upon until a model fitting the desired criteria is built.
Model Development
T or FSubsequent 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:
InputOutputDefinitenessFinitenessEffectiveness
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 ananswer 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 timeand space resources required to execute it.
Analysis of Algorithms
T or FUsually, the efficiency or running time of an algorithm is stated as a function relating the input length to the number of steps, knownas time complexity, or volume of memory, known as space complexity.
True
A series of steps that you expect will arrive at aspecific solution.
Algorithm
T or FWriting 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 theintent 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 onlyshow if errors are present.
Program Testing
For a programmer reliable ________ is always a must.
Documentation
T or FThe 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
DevelopmentMaintenanceKnowledge transfer to other developers.
T or FSuccessful documentation will make information easily accessible, provide alimited number of user entry points, help new users learn quickly, simplify theproduct and help cut support costs
True
Documentation is usually focused on the following components that make upan application:
Server environmentsBusiness rulesDatabases/filesTroubleshootingApplication installationCode 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