#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) {
// 1. Khai báo mảng con trỏ hàm (hàm void, không tham số)
void (*states[])() = {state_init, state_load, state_execute, state_exit};
// 2. Chạy chính xác 3 trạng thái sử dụng vòng lặp for
// Không dùng 'if' hay 'switch', dùng '%' để xử lý wrap around (quay đầu)
for (int i = 0; i < 3; i++) {
int current_index = (start + i) % 4; // Công thức chuyển đổi chỉ số
states[current_index](); // Gọi hàm thông qua con trỏ
printf("\n");
}
}
int main() {
int start;
scanf("%d", &start);
run_state_sequence(start);
return 0;
}