2015-02-09 68 views

回答

3

該消息僅僅意味着MiniZinc不支持帶有決策變量round()(即round(var float))的round()。它只支持「循環(浮動)」,即固定浮動值。這與ceil()和floor()相同,只支持固定浮點值。

MiniZinc 2.0自動將參數分區(/)轉換爲決策變量(因此不支持)的浮點除法。但是,由於您正在使用var int,因此您可以嘗試使用整數除法(「D div 2」),從而得到F = 0.

對於MiniZinc 2.0以及支持var float的求解器(例如G12/mip,JaCoP ,Gecode和ECLiPSe):如果你已經將F定義爲「var float:F」,那麼F將是0.5。請注意,G12/fd不支持var浮點數。

+0

現在清除 - 謝謝! – 2015-02-09 18:22:33

+0

吉姆,如果你在問題中回答了問題,那麼你會覺得很好,因爲你認爲它實際上回答了你的問題。 – hakank 2015-02-10 04:44:26

+0

不知道我可以做到 - 現在我明白了。會做。 – 2015-02-10 09:12:21

相關問題