プロローグ プログラム シェルの連続したプロンプトでいくつかの値を読み取るために述語を使用しています。ユーザーが入力を求められたときにヘルプ メッセージを表示できるようにしたいと考えています。シナリオは次のようになります。
- 入力を求める
- の場合
input = 'help'
、ヘルプ メッセージを表示し、再度同じ入力を求める - の場合
input /= 'help'
は、割り当てValue
て正常に終了します
私がこれまでに行ったこと:
ask_input( Question, Value ) :-
write( Question ), % Please enter ... :
read( ReadValue ),
( ReadValue = 'help' ->
write( 'Help message...' ),
ask_input( Question, Value )
; Value = ReadValue
).
明らかに、上記のコードは機能しません。状態で失敗しask_input
ます。