как объединить строку и число в прологе? - PullRequest
0 голосов
/ 23 марта 2012

скажем, Expr = 1+2., и я хочу это Expr в скобках, что я должен сделать, чтобы получить это объединение?

NewExpr = (1+2).

Как я могу сделать это NewExpr из старого Expr?

(пс: если вам интересно - я делаю префикс в преобразование инфикса)

1 Ответ

1 голос
/ 23 марта 2012

Ну, если вы манипулируете терминами, проблема в том, что 1 + 2 эквивалентно (1 + 2). Так что, думаю, вы не найдете хорошего решения.

Хотя это не должно вас беспокоить, поскольку, если вы поместите это Expr в более сложный термин, скобки действительно будут добавлены соответственно.

?- Expr = 1 + 2, ComplicatedExpr =.. [+, 1, Expr].
Expr = 1+2,
ComplicatedExpr = 1+ (1+2).

Если вы не знаете оператора =../2, вы можете узнать больше об этом здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...