我有兩個不同長度的數組(類型:int)。我怎麼能找到數組b中陣列中的每個數字最接近的號碼(以下雖然可能是因爲語法錯誤,不工作): int: m;
int: n;
array [1..m] of int: a;
array [1..n] of int: b;
array[1..m] of int: results;
results = [abs(a[i] - b[j])| i in 1..
我試圖編寫一個謂詞來執行與circuit相同的操作,但忽略數組中的零,我不斷收到以下錯誤: MiniZinc: type error: initialisation value for 'x_without_0' has invalid type-inst: expected 'array[int] of int', actual 'array[int] of var opt int' 代碼: %
當寫MiniZinc模型,我經常聲明多個變量是這樣的: var int: dog;
var int: cat;
var int: bird;
var int: mammal;
var int: horse;
我想聲明所有這些變量在同一行,但它產生一個語法錯誤: var int: dog, cat, bird, mammal, horse;
是否可以使用一條語句以更簡潔的方式聲明所有
在MiniZinc tutorial,我注意到endif關鍵字在一系列條件語句的結束重複多次。是否可以在MiniZinc中編寫switch語句來替代這種冗長的語法? 例如,我想更簡明地寫這個系列的條件語句: predicate examplePredicate(var int:x, int:s) =
if s == 1
% some code goes here
else if s