Bird
Raised Fist0
Drone Programmingprogramming~10 mins

What is a drone (UAV) in Drone Programming - Interactive Quiz & Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to define a drone's basic property.

Drone Programming
class Drone:
    def __init__(self, [1]):
        self.name = name
Drag options to blanks, or click blank then click option'
Aweight
Bname
Caltitude
Dspeed
Attempts:
3 left
💡 Hint
Common Mistakes
Using a different parameter name than the attribute.
Forgetting to add the parameter in the constructor.
2fill in blank
medium

Complete the code to make the drone fly at a given altitude.

Drone Programming
def fly(self, [1]):
    self.altitude = altitude
    print(f"Flying at {altitude} meters")
Drag options to blanks, or click blank then click option'
Aaltitude
Bdirection
Cspeed
Ddistance
Attempts:
3 left
💡 Hint
Common Mistakes
Using a parameter name unrelated to altitude.
Forgetting to use the parameter to set the attribute.
3fill in blank
hard

Fix the error in the method that makes the drone land.

Drone Programming
def land(self):
    self.altitude = [1]
    print("Drone has landed")
Drag options to blanks, or click blank then click option'
AFalse
BNone
C-1
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Setting altitude to None or False, which are not numbers.
Using a negative number for altitude.
4fill in blank
hard

Fill both blanks to create a dictionary of drone names and their altitudes above 10 meters.

Drone Programming
drones = {'Alpha': 5, 'Bravo': 15, 'Charlie': 20}
high_flyers = { [1] : drones[[2]] for [1] in drones if drones[[1]] > 10 }
Drag options to blanks, or click blank then click option'
Aname
Baltitude
Dheight
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names inconsistently.
Using variables that do not match the dictionary keys.
5fill in blank
hard

Fill all three blanks to create a dictionary of drone names in uppercase with altitudes above 10 meters.

Drone Programming
drones = {'Alpha': 5, 'Bravo': 15, 'Charlie': 20}
high_flyers = { [1] : [2] for [3] in drones if drones[[3]] > 10 }
Drag options to blanks, or click blank then click option'
Aname.lower()
Bdrones[{{BLANK_3}}]
Cname.upper()
Dname
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing up keys and values in the dictionary comprehension.
Using the wrong variable names or methods.

Practice

(1/5)
1. What is a drone (UAV)?
easy
A. A flying robot controlled remotely or by code
B. A type of ground vehicle
C. A software program for computers
D. A stationary camera device

Solution

  1. Step 1: Understand the definition of a drone

    A drone, also called UAV, is a flying machine that can be controlled remotely or by programming.
  2. Step 2: Compare options with the definition

    Only A flying robot controlled remotely or by code matches this description; others describe different things.
  3. Final Answer:

    A flying robot controlled remotely or by code -> Option A
  4. Quick Check:

    Drone = flying robot [OK]
Hint: Remember: drone means flying robot [OK]
Common Mistakes:
  • Confusing drone with ground vehicles
  • Thinking drone is just software
  • Mixing drone with cameras
2. Which of these is the correct way to start a drone flying using code?
easy
A. drone.fly()
B. drone.takeoff()
C. drone.land()
D. drone.stop()

Solution

  1. Step 1: Identify the command to start flying

    The command takeoff() is used to make the drone lift off the ground.
  2. Step 2: Check other commands

    fly() is not a standard command; land() and stop() are for ending flight or stopping.
  3. Final Answer:

    <code>drone.takeoff()</code> -> Option B
  4. Quick Check:

    Takeoff starts flight [OK]
Hint: Takeoff means start flying [OK]
Common Mistakes:
  • Using fly() instead of takeoff()
  • Confusing land() with takeoff()
  • Using stop() to start flying
3. What will this code print if the drone successfully takes off and lands?
drone.takeoff()
print('Flying')
drone.land()
print('Landed')
medium
A. Landed Flying
B. Landed
C. Flying
D. Flying Landed

Solution

  1. Step 1: Follow the code execution order

    The code calls takeoff(), then prints 'Flying', then calls land(), then prints 'Landed'.
  2. Step 2: Understand print outputs

    Both print statements run in order, so output is 'Flying' then 'Landed' on separate lines.
  3. Final Answer:

    Flying Landed -> Option D
  4. Quick Check:

    Print order matches code order [OK]
Hint: Prints appear in code order [OK]
Common Mistakes:
  • Mixing print order
  • Assuming takeoff() prints output
  • Ignoring print statements
4. Find the error in this drone control code:
drone.takeoff()
drone.fly_to(10, 20)
drone.land()
medium
A. land() should be called before takeoff()
B. fly_to() is not a valid drone command
C. Missing drone initialization before commands
D. takeoff() should be after land()

Solution

  1. Step 1: Check if drone is ready before commands

    The code uses drone commands but does not show drone being initialized or connected.
  2. Step 2: Validate command sequence and names

    Commands takeoff(), fly_to(), and land() are valid if drone is ready; sequence is correct.
  3. Final Answer:

    Missing drone initialization before commands -> Option C
  4. Quick Check:

    Drone must be initialized first [OK]
Hint: Always initialize drone before commands [OK]
Common Mistakes:
  • Calling commands before setup
  • Thinking fly_to() is invalid
  • Reversing takeoff and land order
5. You want to program a drone to take off, fly to coordinates (5, 10), hover for 3 seconds, then land. Which code snippet correctly does this?
hard
A.
drone.takeoff()
drone.fly_to(5, 10)
drone.hover(3)
drone.land()
B.
drone.fly_to(5, 10)
drone.takeoff()
drone.hover(3)
drone.land()
C.
drone.takeoff()
drone.hover(3)
drone.fly_to(5, 10)
drone.land()
D.
drone.land()
drone.takeoff()
drone.fly_to(5, 10)
drone.hover(3)

Solution

  1. Step 1: Check the correct order of drone commands

    The drone must take off first, then fly to the location, hover, and finally land.
  2. Step 2: Verify each command sequence in options

    drone.takeoff()
    drone.fly_to(5, 10)
    drone.hover(3)
    drone.land()
    follows the correct order: takeoff, fly_to, hover, land. Others have wrong order.
  3. Final Answer:

    drone.takeoff()\ndrone.fly_to(5, 10)\ndrone.hover(3)\ndrone.land() -> Option A
  4. Quick Check:

    Correct command order =
    drone.takeoff()
    drone.fly_to(5, 10)
    drone.hover(3)
    drone.land()
    [OK]
Hint: Takeoff first, then fly, hover, land last [OK]
Common Mistakes:
  • Flying before takeoff
  • Landing before flying
  • Hovering before flying
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