In planning a solution, students need to understand the problem to be solved and how the solution will be used. In this topic, students will consider all aspects of the solution before starting its implementation. The selection of data types and structures used in the solution of a problem can have a huge impact on the effectiveness of that solution. A variety of data types and structures are introduced in this topic and appropriate algorithms should be developed and implemented that make best use of these. As algorithms become more complex, there is a need for a methodical top-down approach with progressive refinement of detail. It is important that algorithms use the control structures as specified in Course and Software Specifications document. Problems should be selected at a level of difficulty commensurate with the ability level of students. Outcomes A student: P1.2 describes and uses appropriate data types P1.3 describes the interactions between the elements of a computer system P2.2 describes the effects of program language developments on current practices P3.1 identifies the issues relating to the use of software solutions P4.2 investigates a structured approach in the design and implementation of a software solution P4.3 uses a variety of development approaches to generate software solutions and distinguishes between these approaches P5.2 uses and develops documentation to communicate software solutions to others. .
Students learn about: | Students learn to: | Understanding the problem clarification of the specifications performance requirements identification of inputs and required outputs determining the steps that, when carried out, will solve the problem Input Process Output (IPO) diagrams
Abstraction/refinement
Data types integer representation in binary, decimal and hexadecimal characters represented as numbers in binary, decimal and hexadecimal limitations of particular data types data structures, including:
|
interpret and use an ASCII table identify the maximum decimal value that can be stored in a given number of bits recognise the impact of the use of an inappropriate data type select the most appropriate data type for the solution to a particular problem and discuss the merit of the chosen type create a data dictionary which defines the data appropriately
| Structured algorithms
– load an array and print its contents – add the contents of an array of numbers
|
|
|
|