Bird
Raised Fist0
Drone Programmingprogramming~20 mins

Inspection of infrastructure in Drone Programming - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Infrastructure Inspection Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Drone Path Calculation Output
What is the output of the following drone path calculation code snippet?
Drone Programming
path = [(0,0), (1,2), (3,5), (6,8)]
total_distance = 0
for i in range(len(path)-1):
    x1, y1 = path[i]
    x2, y2 = path[i+1]
    dist = ((x2 - x1)**2 + (y2 - y1)**2)**0.5
    total_distance += dist
print(round(total_distance, 2))
A10.08
B10.0
C12.0
D9.5
Attempts:
2 left
💡 Hint
Calculate the distance between each consecutive point and sum them.
🧠 Conceptual
intermediate
1:30remaining
Understanding Drone Sensor Data Processing
Which option best describes how a drone processes sensor data to detect structural cracks during inspection?
AThe drone uses image recognition algorithms to analyze photos taken and identify crack patterns.
BThe drone uses sound waves to detect cracks without any image data.
CThe drone ignores sensor data and relies on GPS coordinates only.
DThe drone manually inspects cracks by sending a technician to the site.
Attempts:
2 left
💡 Hint
Think about how drones use cameras and software to analyze structures.
🔧 Debug
advanced
1:30remaining
Fix the Drone Battery Check Logic
What error does the following drone battery check code raise when executed?
Drone Programming
battery_level = 15
if battery_level < 20
    print("Battery too low for inspection flight.")
else:
    print("Battery level sufficient.")
ATypeError because battery_level is not an integer
BNo error, prints 'Battery too low for inspection flight.'
CNameError because battery_level is undefined
DSyntaxError due to missing colon after if statement
Attempts:
2 left
💡 Hint
Check the syntax of the if statement.
📝 Syntax
advanced
1:30remaining
Identify the Correct Drone Command Syntax
Which option shows the correct syntax to command a drone to hover at 10 meters altitude for 5 seconds?
Adrone.hover(altitude:10, duration:5)
Bdrone.hover(10, 5 seconds)
Cdrone.hover(altitude=10, duration=5)
Ddrone.hover(altitude=10 duration=5)
Attempts:
2 left
💡 Hint
Look for proper function call syntax with named parameters.
🚀 Application
expert
2:30remaining
Calculate Number of Inspection Points
A drone inspects a bridge by taking photos every 3 meters along a 120-meter span. It also takes 2 photos at each end for detailed views. How many photos does the drone take in total?
A40
B42
C44
D46
Attempts:
2 left
💡 Hint
Divide the span by the photo interval, then add the extra photos at the ends.

Practice

(1/5)
1. What is the main purpose of using a drone's inspect() function in infrastructure inspection?
easy
A. To control the drone's speed during flight
B. To repair damaged parts of the infrastructure
C. To send the drone to a specific location for inspection
D. To charge the drone's battery automatically

Solution

  1. Step 1: Understand the function purpose

    The inspect() function is designed to send the drone to a location for inspection.
  2. Step 2: Compare options with function role

    Only To send the drone to a specific location for inspection matches the purpose of sending the drone to inspect infrastructure.
  3. Final Answer:

    To send the drone to a specific location for inspection -> Option C
  4. Quick Check:

    inspect() sends drone to location = A [OK]
Hint: Remember: inspect() means 'go check there' [OK]
Common Mistakes:
  • Confusing inspect() with repair functions
  • Thinking inspect() controls speed
  • Assuming inspect() charges battery
2. Which of the following is the correct syntax to capture an image during a drone inspection?
easy
A. drone.captureImage()
B. drone.capture-Image()
C. drone.captureimage()
D. drone.capture_image()

Solution

  1. Step 1: Identify correct method naming style

    In drone programming, method names use lowercase with underscores for readability.
  2. Step 2: Match options to correct style

    drone.capture_image() uses capture_image(), which is the correct syntax.
  3. Final Answer:

    drone.capture_image() -> Option D
  4. Quick Check:

    Method names use underscores = D [OK]
Hint: Use underscores for multi-word method names [OK]
Common Mistakes:
  • Using camelCase instead of snake_case
  • Omitting underscores between words
  • Using invalid characters like hyphens
3. What will be the output of this code snippet?
drone.inspect('bridge')
image = drone.capture_image()
print(image)
medium
A. SyntaxError
B. 'bridge_image.jpg'
C. None
D. 'image captured'

Solution

  1. Step 1: Understand the inspect and capture_image functions

    The inspect('bridge') sends the drone to the bridge, and capture_image() takes a photo and returns the filename.
  2. Step 2: Analyze the print output

    Printing image shows the filename string, which is 'bridge_image.jpg'.
  3. Final Answer:

    'bridge_image.jpg' -> Option B
  4. Quick Check:

    capture_image() returns filename = C [OK]
Hint: capture_image() returns filename string [OK]
Common Mistakes:
  • Expecting a boolean or None instead of filename
  • Confusing print output with status messages
  • Assuming syntax error without checking code
4. Identify the error in this drone inspection code:
drone.inspect('tower')
image = drone.captureImage()
print(image)
medium
A. Method name should be capture_image(), not captureImage()
B. Missing parentheses after inspect
C. print() cannot print variables
D. inspect() requires two arguments

Solution

  1. Step 1: Check method names for correct syntax

    The method captureImage() is incorrect; it should be capture_image() using underscores.
  2. Step 2: Verify other code parts

    inspect('tower') is correct with parentheses and one argument; print() can print variables.
  3. Final Answer:

    Method name should be capture_image(), not captureImage() -> Option A
  4. Quick Check:

    Method names use underscores = A [OK]
Hint: Check method names carefully for underscores [OK]
Common Mistakes:
  • Using camelCase instead of snake_case
  • Thinking print() can't print variables
  • Assuming inspect needs two arguments
5. You want the drone to inspect multiple infrastructure points and save images with names matching each point. Which code correctly does this?
points = ['bridge', 'tower', 'dam']
images = {}
for point in points:
    drone.inspect(point)
    images[point] = drone.capture_image()
print(images)
hard
A. {'bridge': 'bridge_image.jpg', 'tower': 'tower_image.jpg', 'dam': 'dam_image.jpg'}
B. ['bridge_image.jpg', 'tower_image.jpg', 'dam_image.jpg']
C. {'bridge_image.jpg', 'tower_image.jpg', 'dam_image.jpg'}
D. SyntaxError due to missing colon in for loop

Solution

  1. Step 1: Understand the loop and dictionary usage

    The code loops over points, inspects each, and stores the image filename in a dictionary with the point as key.
  2. Step 2: Predict the dictionary content after loop

    Each key is the point name, and value is the image filename matching that point, e.g. 'bridge_image.jpg'.
  3. Final Answer:

    {'bridge': 'bridge_image.jpg', 'tower': 'tower_image.jpg', 'dam': 'dam_image.jpg'} -> Option A
  4. Quick Check:

    Dictionary keys = points, values = filenames = B [OK]
Hint: Use dictionary to map points to images [OK]
Common Mistakes:
  • Using list instead of dictionary for mapping
  • Forgetting colon after for loop
  • Confusing set notation with dictionary
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard