Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Using python Enhance the program so that when the projectile misses the target it displays hints to the user indicating whether the angle and/or the

Using python Enhance the program so that when the projectile misses the target it displays hints to the user indicating whether the angle and/or the force value should be increased or decreased. For example the program should display message such as'Try greater angle' and 'Use less force'

import turtle

# Named constants SCREEN_WIDTH = 600 # Screen width SCREEN_HEIGHT = 600 # Screen height TARGET_LLEFT_X = 100 # Target's lower-left X TARGET_LLEFT_Y = 250 # Target's lower-left Y TARGET_WIDTH = 25 # Width of the target FORCE_FACTOR = 30 # Arbitrary force factor PROJECTILE_SPEED = 1 # Projectile's animation speed NORTH = 90 # Angle of north direction SOUTH = 270 # Angle of south direction EAST = 0 # Angle of east direction WEST = 180 # Angle of west direction

# Setup the window. turtle.setup(SCREEN_WIDTH, SCREEN_HEIGHT)

# Draw the target. turtle.hideturtle() turtle.speed(0) turtle.penup() turtle.goto(TARGET_LLEFT_X, TARGET_LLEFT_Y) turtle.pendown() turtle.setheading(EAST) turtle.forward(TARGET_WIDTH) turtle.setheading(NORTH) turtle.forward(TARGET_WIDTH) turtle.setheading(WEST) turtle.forward(TARGET_WIDTH) turtle.setheading(SOUTH) turtle.forward(TARGET_WIDTH) turtle.penup()

# Center the turtle. turtle.goto(0, 0) turtle.setheading(EAST) turtle.showturtle() turtle.speed(PROJECTILE_SPEED) # Get the angle and force from the user. angle = float(input("Enter the projectile's angle: ")) force = float(input("Enter the launch force (1-10): "))

# Calculate the distance. distance = force * FORCE_FACTOR

# Set the heading. turtle.setheading(angle)

# Launch the projectile. turtle.pendown() turtle.forward(distance)

# Did it hit the target? if (turtle.xcor() >= TARGET_LLEFT_X and turtle.xcor() <= (TARGET_LLEFT_X + TARGET_WIDTH) and turtle.ycor() >= TARGET_LLEFT_Y and turtle.ycor() <= (TARGET_LLEFT_Y + TARGET_WIDTH)): print('Target hit!') else: print('You missed the target.')

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions

Question

Explain why many households do not participate in the stock market.

Answered: 1 week ago