What content is covered in the NCSS Challenge?
Here is a summary of the content that is covered in each stream of the NCSS Challenge. There are also curriculum links available for each stream.
Newbies Stream
The Newbies stream of the NCSS Challenge is all completed in Blockly Python. Check out the Australian curriculum links.
Here is the content that is covered in each week:
Week 1
- Variables
- Turtle graphics
- Basic calculations
Week 2
- User input
- Types of data
- More turtle: changing line width, direction, smaller turns, colours
Week 3
- Algorithms
- Making decisions
- Boolean values
- Angles
Week 4
- Changing and checking capitalisation
- Replacing text
- Looping (fixed number, with turtle, over text)
Week 5
- Representations
- Characters in a string
- Filling with colour
- Repeating shapes with rotation
Beginners Stream
Beginners has streams in both Blockly and Python, however both streams cover the same content. Check out the Australian curriculum links for the Blockly stream and the Python stream.
Week 1
- Printing messages
- Saving information using variables
- Calculations in Blockly;
- Using variables in calculations;
- Two different data types: numbers and strings;
- Adding and multiplying strings;
- Moving and turning the turtle.
Week 2
- User input
- f-strings
- Conditions
- Making decisions using if and else
- Converting strings to numbers
- More turtle actions
Week 3
- Making decisions with multiple options using elif
- Using in and not in with strings
- Finding the length of a string
- Editing strings using the replace method.
- "For" loops
- Using range
- Putting comments into code
- Drawing shapes using loops;
- Moving the turtle backwards.
Week 4
- "ord" and "chr" functions
- Getting a single character from a string using indexing
- Counting in binary
- Introduction to functions, including calling built-in and user-defined functions
- Making turtle drawings colourful using bgcolor and fillcolor;
Week 5
- Writing functions including calling functions with one or more arguments, and using return to give a value back to the code that called a function.
- Moving the turtle using the goto function
- Using RGB and hexadecimal values.
Intermediate Stream
The Intermediate stream is in Python, and content covered in the Beginners stream is assumed knowledge. Check out the Australian curriculum links.
Week 1
- Revision of topics from the Beginners stream:
- f-strings
- Functions & multi arg functions
- Comments
- If-elif-else
- Numerical conditions
- String based conditions
- For loops with strings and range
- Changing case type using functions
- Floats including converting to a float
- Strings including converting to a string and string concatenation
Week 2
- Data structures including lists
- Using the .split() function
- For loops with multiple arguments
Week 3
- Lists including indexing, append, sort and reverse.
- While loops, including input in a loop, using a counter, and using string comparison
Week 4
- Introduction to dictionaries, including how to use them, create them, and edit them.
Week 5
- Reading files
- Creating dictionaries from files
- How to use the .strip() function
Advanced Stream
The Advanced stream is the most difficult stream of the NCSS Challenge, and is a significant step above the intermediate stream. It is not run every time we do the Challenge. Check out the Australian curriculum links.
Week 1 - Revision of topics covered in the Intermediate Stream.
- Data types
- Lists
- Control structures
- Dictionaries
- Files
- Functions
Week 2
- List comprehensions and lambda expressions
- Tuples
- Enumerate and sorting
- Sets
- Complex data structures
Week 3
- Floating point
- Object Oriented Programming
- Operator overloading
- Exceptions
Week 4
- Recursion
- Pathfinding
Week 5
- CSV files
- Reading data from images