#include <stdio.h> void on_button() { printf("Button Pressed"); } void on_timer() { printf("Timer Expired"); } void on_uart() { printf("UART Received"); } void on_power() { printf("Power On"); } void on_error() { printf("Error Detected"); } // Write your event dispatcher logic here void handle_event(int event_code) { if(event_code < 0 || event_code > 4) printf("Unhandled Event"); void (*states[5])() = {on_button, on_timer, on_uart, on_power, on_error}; if(event_code == 0) states[0](); if(event_code == 1) states[1](); if(event_code == 2) states[2](); if(event_code == 3) states[3](); if(event_code == 4) states[4](); } int main() { int event; scanf("%d", &event); handle_event(event); return 0; }
Test Cases
Test Results
Input
0
Expected Output
Button Pressed