checkChar :-
nl,
write('Enter a character [press 0 to stop]: '),
get(X),
process(X).
process(X) :-
S = put(X),
0 == S,
!.
process(X) :-
write('ASCII code for <'),
put(X),
write('>:'),
write(X),
checkChar.
用户将输入他们想要的任何内容,prolog会将该字符转换为ASCII码并显示它。 如果输入0,序言将停止执行,但除了直接与ASCII 48相比,我怎么能这样做呢? (ASCII 48 = 0) 这就是我曾经尝试过的,但是一旦我输入0,它仍然无法停止。
答案 0 :(得分:1)
我认为这是你可能正在寻找的东西:
checkChar :-
nl,
write('Enter a character [press 0 to stop]: '),
get(X),
process(X).
process(X) :-
X =\= "0",
write('ASCII code for <'),
put(X),
write('>:'),
write(X),
checkChar.