Looks like no one added any tags here yet for you.
how do you understand a problem (understanding the problem)
identify requirements and parameters of the problem
determine the steps that will solve the problem
check and test the solution
what is an IPO diagram (understanding the problem)
used to describe data elements that enter a system/subsystem, processors that will occur, and the data elements that will then leave the system
what is the top down approach (abstraction/refinement)
breaking down large complicated problems into smaller problems that are easier to solve
what is a program made of (abstraction/refinement)
modules and subprograms
what are modules (abstraction/refinement)
written separately and brought together to form a whole
what is algorithm/main program known as
the driver module
what are subprograms (abstraction/refinement)
used within the main program section, used often in top-down method
what are data flow diagrams and when are they used (abstraction/refinement)
describes the path of data in system, initial DFD represents one whole system as a single process (known as a CONTEXT DIAGRAM/LEVEL 0 DFD)
used during design processes
what are structure charts (abstraction/refinement)
represents a system by showing the separate modules/subroutines
what do the shapes in structure charts mean (abstraction/refinement)
rectangle
empty circle arrow
filled circle arrow
diamond
curved arrow
module
flow of data
flag to show processing being doing
decision
loop
what are system flowcharts (abstraction/refinement)
representing a system to show the flow of data
what do the shapes of system flowcharts mean (abstraction/refinement)
parallelogram
rectangle with a chomp
pencil looking shape
slanted roof
rectangle with a fold on the top left
rectangle
rhombus
tape
cylinder
diamond
line
input/output
paper document
online display
online input
punched card
process
manual operation
magnetic tape
disk drive
decision
telecommunication link
what is the difference between a system flowchart and a program flowchart
system flowcharts do not use a start/end system and dont represent complex logic
program flowcharts are used to represent the logic in an algorithm
what are the different data types (data types)
integer, string, floating point, boolean, date, array, record, file
what is an integer (data types)
whole numerical data stored as 2 bytes
what is a string (data types)
a sequence of characters
what is a floating point (data types)
numbers with decimal places and requires more data than an integer
what is a boolean (data types)
simplest data type with only two possible values, true or false
what is a data structure (data types)
literally top-down
what is a one-dimensional array (data types)
allows a variable to store a number of related data items, that are the same type, rather than just one item
what is a record (data types)
used to link data items that are related but are DIFFERENT types
how are records use in sequential files (data types)
records being stored in a way that only allows access to a record if all previous records have been processed
usually end-of-file (EOF) marker used at the end of a file
what is a data dictionary (data types)
information of variables including name, data type, size, description and examples
what are structured algorithms
a series of steps or instructions designed to solve a problem
what is a control structure (structured algorithms)
literally a flowchart
what is a sequence (structured algorithms)
a simple sequence of instructions
what is a selection and examples (structured algorithms)
a selection between two or more different courses of actions
eg. binary selection (if, then, else) and multiway selection (casewhere)
what is repetition and examples (structured algorithms)
the repetition of a set of instructions a number of times
eg. pre-test (while, endwhile) and post-test (repeat, until) loops
what is pseudocode (structured algorithms)
relies on indented words and use of keywords (in caps) to highlight structure of an algorithm
BEGIN
END
what are program flowcharts (structured algorithms)
a pictoral or graphical method of describing an algorithm
what do the shapes of flowcharts mean
rounded rectangle
rectangle
diamond
parallelogram
weird chomped rectangle
rectangle with lines
arrow
start and end of a flowchart
process
decision
input/output
paper document
subroutine
flow of logic
how do you load an array and print its contents (structured algorithms)
BEGIN
→ OPEN …………. FOR INPUT/OUTPUT
→ READ …… FROM …………..
→ → WHILE NOT EOF
CLOSE …………..
END
what and how do you use stubs (structured algorithms)
temporary section of code used to reduce the places that you need to look to find an error, used to represent incomplete modules
what are structured algorithms good for (structured algorithms)
to improve the clarity, quality, and development time of a computer program
what are meta-languages (implementing software solutions)
describing the syntax of a programming language
made by john backus in mid to late 1950s
what do EBNF diagrams look like (implementing software solutions)
{}
[]
()
|
=
<>
repetition, DOESNT have to be carried out
optional
grouped elements
or
is defined as
needs to be defined
what do railroad diagrams look like (implementing software solutions)
lines
rectangles
circles/rounded rectangles
lines: branches (can be loops/optionals)
rectangles: pre-defined element
circles/rounded rectangles: fixed element
what are syntax errors (implementing software solutions)
occurs how
when is it discovered
ways to avoid
occurs when programmers fails to follow grammar rules
during translation process it will stop and an error message will appear
take care when typing code and desk check
what are runtime errors (implementing software solutions)
occurs how
when is it discovered
ways to avoid
trying to divide by 0, reading data from a non-existent file, finding the square root with negative numbers, outside of a boundary
whilst a program is running it will randomly quit
be aware of where these types of errors may occur
what are logic errors (implementing software solutions)
occurs how
when is it discovered
ways to avoid
condition does not check boundary values, reusing variable names which still contain old values
when operations are performed invalid
desk check the algorithm
what are flags used for (implementing software solutions)
used to check if a section of code has been processed, boolean, set to false and set to true if code is executed
what are some reasons for maintaining code (maintaining software solutions)
changing user requirements
upgrading the user interface
changes in the data to be processed
introduction of new hardware or software
changing organisational focus
changes in government requirements
poorly implemented code
how do you create solutions that are easy to maintain (maintaining software solutions)
use of variables instead of literal constants
use of meaningful variable names
explanatory comments in the code
use of standard control structures with appropriate indentation
appropriate use of white space to improve legibility of the source code
a clear and uncluttered mainline
one logical task per subroutine
meaningful names for subroutines and modules