Programming
This is one of the most important ideas you can remember:
Decompose a problem into smaller parts, model a problem with flowcharts. Learn to think sequentially
Thinking procedurally[edit]
Thinking logically[edit]
Thinking ahead[edit]
Thinking concurrently[edit]
Thinking abstractly[edit]
Connecting computational thinking and program design[edit]
Introduction to programming[edit]
- What is a programming language?
- High level languages
- Compiler
- Low level languages
- Translating high-level code to low-level code
- Control flow
Use of programming languages[edit]
Other important ideas in programming[edit]
Standards[edit]
Computational thinking, problem-solving and programming | |
Identify the procedure appropriate to solving a problem. | Computational Thinking |
Evaluate whether the order in which activities are undertaken will result in the required outcome. | Computational Thinking |
Explain the role of sub-procedures in solving a problem. | Computational Thinking |
Identify when decision-making is required in a specified situation. | Computational Thinking |
Identify the decisions required for the solution to a specified problem. | Computational Thinking |
Identify the condition associated with a given decision in a specified problem. | Computational Thinking |
Explain the relationship between the decisions and conditions of a system. | Computational Thinking |
Deduce logical rules for real-world situations. | Computational Thinking |
Identify the inputs and outputs required in a solution. | Computational Thinking |
Identify pre-planning in a suggested problem and solution. | Computational Thinking |
Explain the need for pre-conditions when executing an algorithm. | Computational Thinking |
Outline the pre- and post-conditions to a specified problem. | Computational Thinking |
Identify exceptions that need to be considered in a specified problem solution. | Computational Thinking |
Identify the parts of a solution that could be implemented concurrently. | Computational Thinking |
Describe how concurrent processing can be used to solve a problem. | Computational Thinking |
Evaluate the decision to use concurrent processing in solving a problem. | Computational Thinking |
Identify examples of abstraction. | Computational Thinking |
Explain why abstraction is required in the derivation of computational solutions for a specified situation. | Computational Thinking |
Construct an abstraction from a specified situation. | Computational Thinking |
Distinguish between a real-world entity and its abstraction. | Computational Thinking |
Describe the characteristics of standard algorithms on linear arrays. | Computational Thinking |
Outline the standard operations of collections. | Computational Thinking |
Discuss an algorithm to solve a specific problem. | Computational Thinking |
Analyse an algorithm presented as a flow chart. | Computational Thinking |
Analyse an algorithm presented as pseudocode. | Computational Thinking |
Construct pseudocode to represent an algorithm. | Computational Thinking |
Suggest suitable algorithms to solve a specific problem. | Computational Thinking |
Deduce the efficiency of an algorithm in the context of its use. | Computational Thinking |
Determine the number of times a step in an algorithm will be performed for given input data. | Computational Thinking |
State the fundamental operations of a computer. | Computational Thinking |
Distinguish between fundamental and compound operations of a computer. | Computational Thinking |
Explain the essential features of a computer language. | Computational Thinking |
Explain the need for higher level languages. | Computational Thinking |
Outline the need for a translation process from a higher level language to machine executable code. | Computational Thinking |
Define the terms: variable, constant, operator, object. | Computational Thinking |
Define common operators. | Computational Thinking |
Analyse the use of variables, constants and operators in algorithms. | Computational Thinking |
Construct algorithms using loops, branching. | Computational Thinking |
Describe the characteristics and applications of a collection. | Computational Thinking |
Construct algorithms using the access methods of a collection. | Computational Thinking |
Discuss the need for sub-programmes and collections within programmed solutions. | Computational Thinking |
Construct algorithms using pre- defined sub-programmes, one- dimensional arrays and/or collections. | Computational Thinking |