Python Studio ยท project 14 of 18 ยท premium, free for now
Project: the bouncing ball
Move the ball 20 steps. If x goes above 100, set x to 200 - x and reverse the speed; if x goes below 0, set x to -x and reverse the speed. Count the bounces. Print the final x, then the number of bounces.
Learn
Animation is just position changing a little at a time. Move x by speed each step. When the ball passes a wall, reflect it: put it back inside by the same distance it went past, and flip the speed's sign. Counting the bounces tells you how long the ball has been travelling.
Your task
Move the ball 20 steps. If x goes above 100, set x to 200 - x and reverse the speed; if x goes below 0, set x to -x and reverse the speed. Count the bounces. Print the final x, then the number of bounces.
Stretch challenge
Let the ball also move up and down, and print the (x, y) position each step.
Press Run to see what your program prints.
More in this module
Keep going in Python Studio
Project: a ball's path
Place a dot at (x, 150 - x * x / 150) for x from -150 to 150 in steps of 10, cycling through at least 3 colours.
Start โ16Project: free fall
Drop from a height of 80 metres. Print the height after each whole second while it is above ground, like After 0 s: 80 m, then Landed after 4 s.
Start โPractise the idea
๐ฑ Play Gravity Sums
Drop a ball through a Plinko board into the bin with the correct answer.
FAQ
Project: the bouncing ball: common questions
I am stuck. What can I do?
Press Hint for a nudge, read the message next to each goal, and compare your code with the lesson text. If you still need it, Show answer reveals a model solution. Try to type it yourself rather than copy it.
Does my work get saved?
Your ticks and XP are saved in this browser, and in your account if you log in. The code you type is not stored on a server.
Start a conversation
Enjoying coding? Meet a teacher.
Tell us the learner's age, country and what they would like to build, and we will suggest a class. A parent or guardian can make the enquiry.
- Tell us the learnerโs age or grade and goals
- Weโll suggest a suitable class or learning path
- Weโll confirm format, timing and fees with a parent or guardian
Play it, don't just read it
Write some code right now
Free games that need no sign-up. Pick one and play for five minutes.
Pick a game
- Code BuilderThe lines of a Python program are mixed up. Tap them into the rightโฆPlay
- Bug HunterA Python program prints the wrong answer. Find the one line with theโฆPlay
- Predict the OutputRead a short Python program and choose what it prints. Then watch it runโฆPlay
- Code JungleWrite real Python to guide Miko the monkey to every banana. 24 levels:โฆPlay