При запуске только одного предиката, программа правильно обрабатывает пользовательский ввод.
【Код】
main:-
chooseusertype.
chooseusertype:-
write('Log in as a merchant or customer?: '),
read(X),
format('Your log in type: ~w', [X]).
【Результат выполнения】
Log in as a merchant or customer?: customer.
Your log in type: customer
Однако, когда я пытаюсь передать входные данные, указанные в предикате selectusertype, в startas предикат
【Код】
main(-Usertype):-
chooseusertype,
startas(Usertype).
chooseusertype:-
write('Log in as a merchant or customer?: '),
read(X),
format('Your log in type: ~w', [X]).
startas('merchant'):-
write('Logged in as merchant'), nl,
write('Any update on the shelves?').
startas('customer'):-
write('Logged in as customer'), nl,
write('Let us help you find the ingredients you want!').
【Результат выполнения】
false
Сбой. Я знаю, что синтаксис неправильный, но я не нахожу документацию по Прологу хорошо написанной, и я застрял из-за этого. Как мне это исправить?