#include <stdio.h>
void say_hello() {
printf("Hello, world!\n");
}
int add(int a, int b) {
return a + b;
}
int subtract(int a, int b) {
return a - b;
}
int multiply(int a, int b) {
return a * b;
}
int divide(int a, int b) {
return a / b;
}
int operation(int x, int y, int (*functionPtr)(int, int)) {
return (*functionPtr)(x, y);
}
int main() {
int result;
int (*operationPtr)(int, int);
operationPtr = add;
result = operation(10, 5, operationPtr);
printf("Result of addition: %d\n", result);
operationPtr = subtract;
result = operation(10, 5, operationPtr);
printf("Result of subtraction: %d\n", result);
operationPtr = multiply;
result = operation(10, 5, operationPtr);
printf("Result of multiplication: %d\n", result);
operationPtr = divide;
result = operation(10, 5, operationPtr);
printf("Result of division: %d\n", result);
return 0;
}