Bird
Raised Fist0
Drone Programmingprogramming~20 mins

Altitude control in Drone Programming - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Altitude Control Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
What is the output of this altitude adjustment code?

Consider a drone altitude control function that adjusts altitude based on sensor input. What will be printed after running this code?

Drone Programming
def adjust_altitude(current_altitude, target_altitude):
    if current_altitude < target_altitude:
        return current_altitude + 1
    elif current_altitude > target_altitude:
        return current_altitude - 1
    else:
        return current_altitude

altitude = 10
for _ in range(5):
    altitude = adjust_altitude(altitude, 12)
print(altitude)
A10
B15
C12
D11
Attempts:
2 left
💡 Hint

Each loop changes altitude by 1 towards the target.

🧠 Conceptual
intermediate
1:30remaining
Which sensor reading causes the drone to descend?

A drone uses a sensor to maintain altitude. If the sensor reading is below the target altitude, the drone ascends. If above, it descends. Which sensor reading will cause the drone to descend?

ASensor reading is greater than target altitude
BSensor reading equals target altitude
CSensor reading is less than target altitude
DSensor reading is zero
Attempts:
2 left
💡 Hint

Think about when the drone needs to go down.

🔧 Debug
advanced
2:00remaining
What error does this altitude control code raise?

Analyze the following code snippet. What error will it raise when run?

Drone Programming
def maintain_altitude(current, target):
    while current != target:
        if current < target:
            current += 1
        else:
            current -= 1
    return current

print(maintain_altitude(5, 10))
ANo error, outputs 10
BTypeError because of wrong operator
CInfinite loop error
DSyntaxError due to missing colon
Attempts:
2 left
💡 Hint

Check the if statement syntax carefully.

📝 Syntax
advanced
1:30remaining
Which option correctly implements a safe altitude check?

Choose the code snippet that correctly checks if the drone altitude is within safe limits (between 5 and 20 inclusive).

A
if altitude &gt; 5 and altitude &lt; 20:
    print('Safe altitude')
B
if 5 &lt;= altitude &lt;= 20:
    print('Safe altitude')
C
if altitude &gt;= 5 or altitude &lt;= 20:
    print('Safe altitude')
D
if altitude &gt; 5 or altitude &lt; 20:
    print('Safe altitude')
Attempts:
2 left
💡 Hint

Think about inclusive range checks.

🚀 Application
expert
2:30remaining
What is the final altitude after running this control loop?

A drone tries to reach target altitude 15 starting from 10. It adjusts altitude by adding half the difference each iteration (rounded down). What is the altitude after 3 iterations?

Drone Programming
altitude = 10
for _ in range(3):
    diff = 15 - altitude
    altitude += diff // 2
print(altitude)
A14
B15
C12
D13
Attempts:
2 left
💡 Hint

Calculate each iteration step carefully.

Practice

(1/5)
1. What is the main purpose of altitude control in drone programming?
easy
A. To keep or change the drone's height safely
B. To control the drone's speed horizontally
C. To manage the drone's battery life
D. To adjust the drone's camera angle

Solution

  1. Step 1: Understand altitude control function

    Altitude control is about managing the drone's height above ground.
  2. Step 2: Compare options to this function

    Only To keep or change the drone's height safely talks about height control, others focus on speed, battery, or camera.
  3. Final Answer:

    To keep or change the drone's height safely -> Option A
  4. Quick Check:

    Altitude control = height management [OK]
Hint: Altitude control means managing drone height safely [OK]
Common Mistakes:
  • Confusing altitude with speed control
  • Thinking altitude control manages battery
  • Mixing altitude control with camera settings
2. Which of the following is the correct syntax to set a target altitude of 100 meters in a drone program?
easy
A. altitude = 100m
B. setAltitude(100)
C. targetAltitude = '100'
D. set_altitude = 100

Solution

  1. Step 1: Identify correct function call syntax

    Function calls use parentheses with numeric values, like setAltitude(100).
  2. Step 2: Check other options for syntax errors

    altitude = 100m uses invalid unit '100m' without quotes or function; C uses string instead of number; D assigns value but not a function call.
  3. Final Answer:

    setAltitude(100) -> Option B
  4. Quick Check:

    Function call with number = setAltitude(100) [OK]
Hint: Function calls use parentheses with numbers, not strings or units [OK]
Common Mistakes:
  • Using units like '100m' directly in code
  • Assigning string instead of number for altitude
  • Confusing assignment with function call
3. What will be the output of this code snippet controlling drone altitude?
current_altitude = 50
set_target = 100
if current_altitude < set_target:
    print('Ascending')
else:
    print('Holding position')
medium
A. Holding position
B. Descending
C. Ascending
D. Error

Solution

  1. Step 1: Compare current altitude and target

    current_altitude is 50, set_target is 100, so 50 < 100 is True.
  2. Step 2: Determine which print runs

    Since condition is True, it prints 'Ascending'.
  3. Final Answer:

    Ascending -> Option C
  4. Quick Check:

    50 < 100 means Ascending [OK]
Hint: If current altitude less than target, drone ascends [OK]
Common Mistakes:
  • Confusing less than with greater than
  • Expecting 'Holding position' when ascending
  • Thinking code has syntax error
4. Identify the error in this altitude control code snippet:
def adjust_altitude(current, target):
    if current > target
        return 'Descending'
    else:
        return 'Ascending'
medium
A. Indentation error in else block
B. Wrong comparison operator
C. Function missing return statement
D. Missing colon after if condition

Solution

  1. Step 1: Check syntax of if statement

    The if line lacks a colon at the end, which is required in Python.
  2. Step 2: Verify other parts

    Comparison operator and return statements are correct; indentation is consistent.
  3. Final Answer:

    Missing colon after if condition -> Option D
  4. Quick Check:

    Python if needs colon ':' [OK]
Hint: Python if statements always end with a colon ':' [OK]
Common Mistakes:
  • Forgetting colon after if condition
  • Assuming wrong operator causes error
  • Misreading indentation as error
5. You want the drone to hover steadily at 120 meters. Which code snippet correctly adjusts motor power based on current altitude to maintain this target?
def control_altitude(current):
    target = 120
    if current < target:
        power = 70
    elif current > target:
        power = 30
    else:
        power = 50
    return power

print(control_altitude(120))
hard
A. 50
B. 70
C. 30
D. 120

Solution

  1. Step 1: Understand the target and current altitude

    Target is 120 meters; current altitude passed is 120.
  2. Step 2: Follow the if-elif-else logic

    Since current equals target, the else block runs, setting power to 50.
  3. Final Answer:

    50 -> Option A
  4. Quick Check:

    Hover power at target altitude = 50 [OK]
Hint: At target altitude, motor power is set to hover value [OK]
Common Mistakes:
  • Choosing power for ascending or descending instead of hover
  • Confusing comparison operators
  • Returning altitude instead of power
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