#include <stdio.h>
void state_init() { printf("Init"); }
void state_load() { printf("Load"); }
void state_execute() { printf("Execute"); }
void state_exit() { printf("Exit"); }
// Your logic here
void run_state_sequence(int start) {
// Implement using function pointer array
void (* f_pointer[4])() = {state_init,state_load,state_execute,state_exit};
for (int i = start ; i < start + 3 ; i ++)
{
if (i > 3)
{
int index = (i % 3) -1;
//printf("%d\n" , index);
f_pointer[index]();
printf("\n");
}
else
{
f_pointer[i]();
printf("\n");
}
}
}
int main() {
int start;
scanf("%d", &start);
run_state_sequence(start);
return 0;
}
Input
0
Expected Output
Init Load Execute