0
0
Drone Programmingprogramming~20 mins

Why swarms multiply drone capability in Drone Programming - Challenge Your Understanding

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Swarm Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Predict Output
intermediate
2:00remaining
Output of swarm coordination message broadcast
Consider a drone swarm where each drone broadcasts a message to all others. What is the output of the following code simulating message counts after one broadcast cycle?
Drone Programming
class Drone:
    def __init__(self, id):
        self.id = id
        self.received_messages = 0

    def broadcast(self, swarm):
        for drone in swarm:
            if drone.id != self.id:
                drone.received_messages += 1

swarm = [Drone(i) for i in range(3)]
for drone in swarm:
    drone.broadcast(swarm)

result = [d.received_messages for d in swarm]
print(result)
A[3, 3, 3]
B[2, 2, 2]
C[1, 1, 1]
D[0, 0, 0]
Attempts:
2 left
💡 Hint
Each drone sends messages to all other drones except itself.
🧠 Conceptual
intermediate
1:30remaining
Why does a drone swarm improve area coverage?
Which reason best explains why a swarm of drones covers a larger area faster than a single drone?
ASwarm drones reduce the need for GPS signals.
BA single drone flies faster than multiple drones combined.
CSwarm drones share batteries to extend flight time.
DMultiple drones can split the area and scan different parts simultaneously.
Attempts:
2 left
💡 Hint
Think about how dividing work helps get it done faster.
🔧 Debug
advanced
2:00remaining
Identify the error in swarm leader election code
This code tries to elect the drone with the highest battery as leader. What error does it cause?
Drone Programming
drones = [{'id': 1, 'battery': 50}, {'id': 2, 'battery': 80}, {'id': 3, 'battery': 30}]
leader = max(drones, key=lambda d: d['battery'])
print(f"Leader is drone {leader['id']}")
AAttributeError because dicts use [] not . to access keys
BSyntaxError due to missing colon in lambda
CTypeError because max() needs a list of numbers
DNo error, prints 'Leader is drone 2'
Attempts:
2 left
💡 Hint
Check how dictionary keys are accessed in Python.
📝 Syntax
advanced
1:30remaining
Find the syntax error in swarm status update
What is wrong with this code snippet updating drone statuses in a swarm?
Drone Programming
statuses = {drone.id: 'active' for drone in swarm if drone.battery > 20}
print(statuses)
AMissing closing bracket '}' for dictionary comprehension
BUsing parentheses instead of square brackets for dictionary keys
CIncorrect indentation of print statement
DMissing colon ':' after 'for' keyword
Attempts:
2 left
💡 Hint
Check if all brackets are properly closed.
🚀 Application
expert
2:30remaining
Calculate total swarm payload capacity
Given a list of drones with individual payload capacities, what is the total payload capacity of the swarm?
Drone Programming
drones = [{'id': 1, 'payload': 5.0}, {'id': 2, 'payload': 7.5}, {'id': 3, 'payload': 6.0}]
total_payload = sum(drone['payload'] for drone in drones)
print(total_payload)
ANone
B3
C18.5
DError due to missing import
Attempts:
2 left
💡 Hint
Add all payload values from each drone.