このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1286978599/214
#  [1] 授業単元:基礎プログラミング  
#  [2] 問題文(含コード&リンク)  
#  問題1 
#  キーボードから読み込んだ整数値と実数値(倍精度:double)を、そのまま画面に表示するプログラムを作成せよ。 
#   

入力する整数の値は123456
入力する実数の値は123.456 

 
#  問題2
キーボードから入力した適当な長さの文字列を、そのまま画面に表示するプログラムを作成しなさい。 
 
#  入力例 I_love_programming. 

 
#  問題3
キーボードから読み込んだ実数値の書式を指定して、整数部4桁、小数点以下2桁で表示するプログラムを作成しなさい。 
 
#  例 12.3456 -> __12.35  
#   
% Prolog
%  一番、「そのまま」出力される述語定義は。

'キーボードから読み込んだ整数値と実数値(倍精度:double)を、そのまま画面に表示する' :-
        get_line(Line),
        atom_to_term(Line,Term,_),
        number_chars(Term,L),
        concat_atom(L,_表示文字列),
        write_formatted('%t',[_表示文字列]).

キーボードから入力した適当な長さの文字列を、そのまま画面に表示する :-
        get_line(Line),
        write_formatted('%t',[Line]).

キーボードから読み込んだ実数値の書式を指定して、整数部4桁、小数点以下2桁で表示する(_実数値の書式) :-
        get_line(Line),
        入力行から実数の整数部・小数点以下部を整数で取得(Line,_実数値の書式,_整数部,_小数点以下部),
        入力行から実数の小数点以下部を整数表示を取得(_実数値の書式,_整数部表示),
        write_formatted('%t.%t',[_整数部表示,_小数点以下部]).

入力行から実数の整数部・小数点以下部を整数で取得(Line,_実数値の書式,_整数部,_小数点以下部) :-
        split(_実数値の書式,['%','.',f],[U,W]),
        concat_atom(['%',W,f],Format1),
        atom_to_term(Line,Term,_),
        write_formatted_atom(Atom,Format1,[Term]),
        split(Atom,['.'],[_整数部,_小数点以下部]).

入力行から実数の小数点以下部を整数部表示を取得(_実数値の書式,_整数部,_整数部表示) :-
        split(_実数値の書式,['%','.',f],[U,_]),
        C is _整数部 mod truncate(10 ^ U),
        concat_atom(['%',U,d],Format2),
        write_formatted_atom(_整数部表示,Format2,[C]).