Code a silly sentence machine
You will combine an animal with an action selected from lists. Random selection can repeat a sentence, so a genuinely new sentence on every run needs an extra rule.
- Code
- Explorer
- About 20 minutes
Grown-up needed: yes for choosing and supervising the coding environment
The film says 'Taz, on the Code tab'. In Taz today, choose Make, then Code, and pick Python.
What you need
- Paper and a pencil
- A grown-up-approved Python environment where the steps use code
- A grown-up
- Or the Maker Studio in Taz, in Python mode: open Taz, choose Make, then Code
The rule
A new sentence on every run.
How to do it
- Write import random in a Python file.
- Set animals = ["A yak", "A newt", "An emu"].
- Set actions = ["sings", "hops", "waves"].
- Write print(random.choice(animals), random.choice(actions)).
- Predict the possible combinations before running.
- Run several times and record any repeated sentence.
Why it works
A list holds several available values, and random.choice selects one of them. Choosing one of three animals and one of three actions gives nine possible combinations in this example. The program does not remember which combinations were used earlier, so repetition is possible. A strict new-sentence rule needs storage of previous results and selection from unused combinations. After all nine combinations are used, that version must stop or expand its lists rather than promise endless unique output from a finite set.
Make it harder
- Add another animal and count the possibilities.
- Choose unused combinations manually to meet the strict rule.
- Describe how a program could remember earlier sentences.
Ask Taz
- Why can random choices repeat a sentence?
- Why do three animals and three actions give nine combinations?
- Why must a unique generator stop when its list runs out?
The coding part of Taz is the Maker Studio.
For grown-ups
Choose and supervise the coding environment. The film names a Taz Code tab. In Taz today that is the Maker Studio: choose Make, then Code, and pick Python. Use ordinary sample words and numbers without personal details. Ask at dinner: “Which prediction did you check, and what change in the instructions would change that output?”
Taz is an AI and can be wrong, so stay close by. Read how safety works on Taz.
Show us yours
Film your hands and what you made, not your face or name. Ask a grown-up before posting anywhere else.
Questions parents ask
Can we begin without running code?
Yes. Write the predicted output on paper and trace the steps together. That gives you a comparison to use when a grown-up-approved Python environment is available. A prediction remains a prediction until you check the actual instructions and result.
What if an error appears?
Read the message with a grown-up and compare spelling, punctuation and indentation with the steps. Change one thing at a time and keep a note of what happened. An error is useful evidence about the instructions, not a judgement about the child.
Must we share the result?
No. Discussing the output at home is enough. Follow the privacy line above for optional online sharing.
More to try
See all Taz Challenges, or look through the science labs. One place for every why. Ask for early access at aitaz.com
Try it in 3D: Probability.