Есть ли способ отформатировать строки в MiniZinc? - PullRequest
2 голосов
/ 24 октября 2019

Есть ли способ отформатировать вывод MiniZinc для создания, например, таблиц, в которых некоторые записи являются строками, размер которых определяется во время вычисления?

В качестве тестового примера я попытался запустить

output ["\(length(show(1234)))"];

, но получил сообщение об ошибке, в котором говорилось:

no function or predicate with this signature found: `length(string)'

ОБНОВЛЕНИЕ: я учу использовать MiniZinc для решения задач планирования. Вот два примера: Волк-гол-капуста и N-кувшины . Вывод каждого отформатирован.

1 Ответ

1 голос
/ 27 октября 2019

MiniZinc поддерживает string_length, поэтому это работает:

output ["\(string_length(show(1234)))"];

Существует поддержка нескольких строковых функций для форматирования, например, show_int, format и т. Д., См. https://www.minizinc.org/doc-2.3.2/en/lib-builtins.html?highlight=string#string-operations

...