このディレクトリの索引
http://hibari.2ch.net/test/read.cgi/tech/1294061094/341
#  【質問テンプレ】  
#  [1] 授業単元:画像処理  
#  [2] 問題文(含コード&リンク):指定したテキストファイルの中にあるデータを読み込み、-1と右端の1を取り除き(横に4つの列、縦に約50の行の数字が並んでいる)、指定した場所にファイルを保存するプログラムを作成する。  
#  
#  例で書くと
#  
#  123 345 567 1
#  234 456 678 1
#  987 564 356 1
#  -1 -1 -1 -1
#  
#  って感じで数字が羅列してあります。
#  必ず右端に1があるんですが例外で-1だけの行が数か所あります。
#  その-1と右端にある1を取り除くものをお願いします。

'指定したテキストファイルの中にあるデータを読み込み、-1と右端の1を取り除き(横に4つの列、縦に約50の行の数字が並んでいる)、指定した場所にファイルを保存する'(_テキストファイル,_指定した場所) :-
        get_split_lines(_テキストファイル,[',',' '],LL),
        '-1と右端の1を取り除き'(LL1,LL2),
        指定した場所にファイルを保存する(_指定した場所,_テキストファイル,LL2).

'-1と右端の1を取り除き'([],[]) :- !.
'-1と右端の1を取り除き'([L1|R1],R2) :-
        append(_,[-1|_],L1),
        '-1と右端の1を取り除き'(R1,R2),!.
'-1と右端の1を取り除き'([[A,B,C,1]|R1],[[A,B,C]|R2]) :-
        '-1と右端の1を取り除き'(R1,R2),!.
'-1と右端の1を取り除き'([L1|R1],[L1|R2]) :-
        '-1と右端の1を取り除き'(R1,R2),!.\

指定した場所にファイルを保存する(_指定した場所,_テキストファイル,LL) :-
        保存ファイルのパス名(_指定した場所,_テキストファイル,_保存ファイルのパス),
        put_csv_lines(_保存ファイルのパス,' ',LL).

保存ファイルのパス名(_指定した場所,_テキストファイル,_保存ファイルのパス) :-
        split(_テキストファイル,['/'],L),
        last(L,_ファイル名),
        concat_atom([_指定した場所,'/',_ファイル名],_保存ファイルのパス).