NCCA uses cookies so that you have the best possible browsing experience on our website. If you agree that we can store and use cookies click 'Accept & Close'.Manage Cookies

Block Based CT

Levels of Computational Thinking

How do you measure the level of Computational Thinking within a program?

Analyse 6 Scratch programs ranging from basic to master level, each program buiding on the work of the preceding programs. There are 7 CT criteria measured :  Data Representation,  Abstraction,  Flow Control,  Synchronisation,   Logic,  Parallelism,  and  User Interactivity. Download and edit the html file as part of an ePortfolio and to keep a record of your own programs and their levels of Computational Thinking.

All of these tasks and challenges address many Learning Outcomes on Computational Thinking, Designing and Developing, Algorithms and Evaluation and Testing. The use of clones in some of the Scratch programs above also introduce ideas relevant to ALT3 - agent based modelling.


Scratch and Python Tasks

The following tasks are part of the Programming Concepts lessons on Python. The challenge for the learner is to execute the task in both Python (text-based) and Scratch (block-based), then measure the level of Computational Thinking in the programs. A sample Scratch program is analysed in each case.

Programming Concept

Description and link to the Task             (Download, Unzip and Launch the html file)

Block-based and Text-based CT
0. Read and Modify Code How old will you be in 100 years?
1. Variables The 2 digit Number Buster
3. Strings Reverse a 4 letter word (No loops allowed)
4. Conditionals A basic Guessing Game
5. Loops (Iterations) Counting up and down
6. Lists and Dictionaries Comparing 2 sets of numbers
7. Defintions (Functions) 

Counting up and down again, with scrolling numbers

Adding elements to a list using functions (definitions)


More Examples of Tasks in Scratch

21 more examples of programs in Scratch, ordered according to the Programming Concepts. For example, write a Scratch program to output multiplication tables of a particular number or devise your version of the LOTTO!