From Wikibooks, open books for an open world
Specification link
Programming basics
write a program in a high-level language
implement and write a program from a given design presented as either a program flowchart or pseudocode
write program statements for:
the declaration of variables and constants
the assignment of values to variables and constants
expressions involving any of the arithmetic or logical operators
(given pseudocode will use the following structures:
DECLARE <identifier> : <data type> // declaration
<identifier> ← <value> or <expression> // assignment)
Transferable skills
recognise the basic control structures in a high-level language other than the one chosen to be studied in depth
appreciate that program coding is a transferable skill
Selection
use an ‘IF’ structure including the ‘ELSE’ clause and nested IF statements
given pseudocode will use the following structure:
IF <condition>
THEN
<statement(s)>
ENDIF
or, including an ‘else’ clause:
IF <condition>
THEN
<statement(s)>
ELSE
<statement(s)>
ENDIF
use a ‘CASE’ structure
given pseudocode will use the following structure:
CASE OF <identifier>
<value 1>: <statement>
<value 2>: <Statement>
...
ENDCASE
CASE OF <identifier>
<value 1>: <statement>
<value 2>: <Statement>
...
OTHERWISE <statement>
ENDCASE
Iteration
use a ‘count controlled’ loop:
given pseudocode will use the following structure:
FOR <identifier> ← <value1> TO <value2>
<statement(s)>
ENDFOR
FOR <identifier> ← <value1> TO <value2> STEP <value3>
<statement(s)>
ENDFOR
use a ‘post-condition’ loop:
given pseudocode will use the following structure:
REPEAT
<statement(s)>
UNTIL <condition>
use a ‘pre-condition’ loop
given pseudocode will use the following structure:
WHILE <condition>
<statement(s)>
ENDWHILE
justify why one loop structure may be better suited to a problem than the others
Built-in functions
use a subset of the built-in functions and library routines supported by the chosen programming language. This should include those used for:
string/character manipulation
formatting of numbers
random number generator
use the information provided in technical documentation describing functions/procedures
Structured programming
explain where in the construction of an algorithm it would be appropriate to use a procedure
given pseudocode will use the following structure for procedure definitions:
PROCEDURE <identifier>
<statement(s)>
ENDPROCEDURE
a procedure may have none, one or more parameters
a parameter can be passed by reference or by value
show understanding of passing parameters by reference
PROCEDURE <identifier> (BYREF <identifier>: <datatype>)
<statement(s)>
ENDPROCEDURE
show understanding of passing parameters by value
PROCEDURE <identifier> (BYVALUE <identifier>: <datatype>)
<statement(s)>
ENDPROCEDURE
a call is made to the procedure using CALL <identifier> ()
explain where in the construction of an algorithm it is appropriate to use a function
use the terminology associated with procedures and functions: procedure/function header, procedure/function interface, parameter, argument, return value
given pseudocode will use the following structure for function definitions:
FUNCTION <identifier> RETURNS <data type> // function has no parameters<br>
<statement(s)><br>
ENDFUNCTION<br>
FUNCTION <identifier> (<identifier>: <data type>)<br>
RETURNS <data type> // function has one or more parameters<br>
<statement(s)><br>
ENDFUNCTION<br></code>
* a function is used in an expression, for example
<code>x ← SQRT(n)<br>
WHILE NOT EOF()
write programs containing several components and showing good use of resources