Вложенный IF в Gnu Mathprog
Я хочу спросить, возможно ли иметь два вложенных, если в модели GnuMathprog и как я могу написать в коде что-то подобное. Для примера:
if a<>0
a*x=y
if b<>0
b*c=d
else 0
else 0
;
большое спасибо
1 ответ
Сначала плохие новости: GMPL не поддерживает заявления If-Then-Else.
Но вы можете использовать условные выражения в циклах for, которые могут быть вложенными. Вот небольшой рабочий не вложенный пример:
for{a in {1..2}} {
for {{0}: a == 1} {
printf "First\n";
} for {{0}: a != 1} {
printf "Second\n";
}
}
end;
Это прекрасно работает при последующей обработке результатов / данных модели.