← Years 5–6 Creating Digital Solutions

Looks blocks: say and think

The say block makes a sprite show a speech bubble with text, so the program can give output to the user. Say for 2 seconds hides it after a time. Use join to add a variable.

Understanding Looks blocks: say and think in Years 5–6 Creating Digital Solutions

What it does: The say block shows the text in a speech bubble, so the program can tell the user something. The join block sticks the words 'Score: ' and the value of the score variable together so say can show both in one bubble. The 'say for seconds' block hides the bubble after the time is up. The plain say block keeps the bubble showing. Say gives the player a message. Turning is done with a Motion block, not a Looks block.

Common mistakes: The words are in the wrong order. The block must read: say [Hello!] for (2) seconds, with the number between 'for' and 'seconds'. Say only shows a speech bubble. It does not wait for the user to type. The first line must be ask [Your name?] and wait so that answer has a value to join.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 41–50) and word search (Modules 41–74).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
Which block makes a sprite show a speech bubble with text for the user to read?
move 10 stepssay Hello!
Matches
say (Score: score)
↓
The text and the variable are not joined, so the block cannot show both. The join block is needed: say (join [Score: ] (score)).
Applying
Meanings
Term
say
Meaning
The say block makes a sprite show a speech bubble with text, so the program can give output to the user. Say for 2 seconds hides it after a time. Use join to add a variable.
Practice
when green flag clicked
Testing
Gaps
"Hello!" for 2 seconds
Check Answer
Spots
1when green flag clicked
2say [Hello!] (2) for seconds

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Owl' badge — Wise Coder, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. Which block makes a sprite show a speech bubble with text for the user to read?
A. say Hello! ✓
B. move 10 steps
The say block is a Looks block. It shows a speech bubble so the program can give output to the user.
2. A sprite should talk for 3 seconds and then the bubble should go away. Which block is best?
A. say Hello!
B. say Hello! for 3 seconds ✓
The 'say for seconds' block hides the bubble after the time is up. The plain say block keeps the bubble showing.
3. Which block shows a thought bubble, like the sprite is thinking?
A. think Hmm... ✓
B. say Hmm...
The think block shows a cloud-shaped thought bubble. The say block shows a speech bubble.
4. You want the sprite to show the score stored in a variable. Which is correct?
A. say Score: score
B. say (join Score: (score)) ✓
Use the join block to put text and a variable together. Without join, the sprite says the word 'score', not the number.
5. A sprite uses 'say Hello! for 2 seconds'. What happens after 2 seconds?
A. The speech bubble disappears ✓
B. The speech bubble stays on the stage
The 'for 2 seconds' part makes the bubble disappear when the time is up and then the script carries on.

Match the Pairs

say [Hello!] for 2 seconds → The sprite shows a speech bubble with Hello! and then the bubble disappears after 2 seconds
think [Hmm...] → The sprite shows a thought bubble with the text and it stays on the stage until another looks block changes it
Use the say block to give output to the user by showing a speech bubble with text → say [Welcome to my game!]
Use join inside a say block to show text and a variable together → say (join [Score: ] (score))
say (Score: score) → The text and the variable are not joined, so the block cannot show both. The join block is needed: say (join [Score: ] (score)).
say [Good luck!] for seconds → The number of seconds is missing. A number is needed, like say [Good luck!] for 2 seconds, so the block knows how long to show the bubble.

Key Term

say
The say block makes a sprite show a speech bubble with text, so the program can give output to the user. Say for 2 seconds hides it after a time. Use join to add a variable.

Fill in the Blanks

1. say "Hello!" for 2 seconds
Hint: Type the Looks block name that shows a speech bubble.
2. say "Hello!" for 2 seconds
Hint: Type the number of seconds the speech bubble stays on the screen.
3. think "I wonder..."
Hint: Type the Looks block name that shows a thought bubble instead of a speech bubble.
4. say (join "Score: " (score))
Hint: Type the block that sticks text and a variable together.
5. set score to 10 say (join "Score: " (score))
Hint: Type the name of the variable made on the first line.

Spot the Error

Question 1
A when green flag clicked
B say [Hello!] (2) for seconds
C think [Hmm...] for (2) seconds
Line B — The words are in the wrong order. The block must read: say [Hello!] for (2) seconds, with the number between 'for' and 'seconds'.
Question 2
A say [Your name?] and wait
B say (join [Hi ] (answer))
C think [Nice name!]
Line A — Say only shows a speech bubble. It does not wait for the user to type. The first line must be ask [Your name?] and wait so that answer has a value to join.
Question 3
A when green flag clicked
B set [score] to (0)
C say [Score: score]
D think [Keep going!]
Line C — Putting the word score inside the text only shows the word 'score'. Use join with the variable: say (join [Score: ] (score)).
Question 4
A say [Hello!] for (two) seconds
B think [Hmm...] for (2) seconds
C say [Let's go!]
Line A — The time must be the number 2, not the word two. Round brackets around a word look like a variable. It should be say [Hello!] for (2) seconds.
Question 5
A ask [Fav colour?] and wait
B say (join [I like ] [answer])
C think [Nice choice!]
Line B — [answer] is plain text, so the bubble would say the word 'answer'. The answer reporter goes in round brackets: (answer).

Student with a class code? Join your class →