このディレクトリの索引

#  【課題】キーボードから入力された1〜9までを九九にし、
#  答えを1行に3個ずつ表示する。半角数字以外が入力された場合、
#  任意のエラーメッセージを表示させること。 
#  【形態】public class Kuku1{で始める 
#  【期限】4月11日 
#  【Ver 】jdk1.6.0_24
#  【注】変数、if,for,whileまで学習。
#  
#  単なる九九の計算のプログラムはできるのですが、例えば、3と入力して
#  3の段の答えだけを表示するやり方、エラーを表示させるやり方、
#  3つずつというのが全くわかりません。


'キーボードから入力された1〜9までを九九にし、答えを1行に3個ずつ表示する' :-
        'キーボードから入力された1〜9までを'(_1〜9までの数),
        append(_,[[N1,N2,N3]|R],[[1,2,3],[4,5,6],[7,8,9]]),
        M1 is N1 * _1〜9までの数,
        M2 is N2 * _1〜9までの数,
        M3 is N3 * _1〜9までの数,
        writef('%t  %t  %t\n',[M1,M2,M3]),
        R = [].

'キーボードから入力された1〜9までを'(_1〜9までの数) :-
        get_line(Line),
        'キーボードからの入力診断'(Line,_1〜9までの数),!.
'キーボードから入力された1〜9までを'(_1〜9までの数) :-
        'キーボードから入力された1〜9までを'(_1〜9までの数).

'キーボードからの入力診断'(Line,_1〜9までの数) :-
        atom_to_term(Line,_1〜9までの数,_),
        integer(_1〜9までの数),
        _1〜9までの数 >= 1,
        _1〜9までの数 =< 9,!.
'キーボードからの入力診断'(Line,_1〜9までの数) :-
        writef('入力された %t からは1〜9までの数が得られません。再入力をお願いします\n',[Line]),
        fail.