Преподаватель попросил изменить код в курсовом, чтобы после условного оператора не повторять весь код заново и предоставил вот такой пример:
...
if(b) ptr_array[13][j] > ptr_array[13][j + 1]
else ptr_array[13][j] < ptr_array[13][j + 1]
...
Я его не понимаю, не понимаю можно ли так вообще сделать и как это реализовать. Вот мой код нынешний, который меня попросили поменять:
void sort_2d_array(int ptr_array[12][15]) {
int tmp;
int choose;
printf("Сортировка:\n1. По возрастанию\n2. По убыванию\n");
scanf_s("%d", &choose);
if (choose == 1) {
for (int i = 0; i < 15; i++) {
for (int j = 0; j < 12; j++) {
if (ptr_array[13][j] > ptr_array[13][j + 1]) {
for (int k = 0; k < 15; k++) {
tmp = ptr_array[k][j];
ptr_array[k][j] = ptr_array[k][j + 1];
ptr_array[k][j + 1] = tmp;
}
}
}
}
}
if (choose == 2) {
for (int i = 0; i < 15; i++) {
for (int j = 0; j < 11; j++) {
if (ptr_array[13][j] < ptr_array[13][j + 1]) {
for (int k = 0; k < 15; k++) {
tmp = ptr_array[k][j];
ptr_array[k][j] = ptr_array[k][j + 1];
ptr_array[k][j + 1] = tmp;
}
}
}
}
}
}