Как присвоить значения элементам в списке в прологе - PullRequest
0 голосов
/ 01 декабря 2019

Итак, я составил список, используя atom_chars(X,Y)., который разбил строку 'abc' на [a,b,c]. Теперь я хочу присвоить номера элементам в списке. Например, a равно 4, b равно 2, c равно 7.

Как мне поступить?

1 Ответ

1 голос
/ 01 декабря 2019

В Прологе символы a, b и c считаются атомами . Вы не можете «присваивать» им значения. Однако вы можете связать с ними числа, используя, например, - в качестве удобной записи для термина. Вы можете сформировать список:

[a-2, b-4, c-3]

Допустим, вы связываете это с переменной AssocList. Затем, если у вас есть буква или символ, связанный с C, вы можете запросить:

member(C-N, AssocList)

Это свяжет N с числом, связанным с C. Аналогично, если у вас есть номер, он выдаст все символы C, связанные с этим номером.

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