User Input , How can we do it?

You can use read for that. For example you could write read(X), animal(X). into the prolog interpreter or write this into a script file:

:- read(X), animal(X).

If you then enter a valid animal name into the prompt, it will be bound to X. If you enter an invalid name, it won't.

Or you could define a procedure like this:

read_animal(X) :-
  write('please type animal name:'),
  nl,
  read(X),
  animal(X).

And then call it in the in the interpreter like read_animal(X)..

Note that the input needs to be terminated by a ..


Animal('X').

Input:- write("enter your name"),nl, 
        read(X), nl, 
        write(X).

Tags:

Prolog