このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 144代目 #276 # [1] プログラミング演習 # [2] 問題文 # バイナリファイルを読み込み、バイト数を調べて表示し、 # コピーを作成するプログラムを作成せよ。 # バイナリファイルは『マイピクチャ』の『Sample Pictures』に含まれる # jpgファイルなどをコピーして使用すること。 # 'バイナリファイルを読み込み、バイト数を調べて表示し、コピーを作成する'(_バイナリファイル,_コピーファイル) :- バイナリファイルの入出力を確保し(_バイナリファイル,_コピーファイル,_入力,_出力), '_入力を読み込み、バイト数を調べて表示し、コピーを_出力に作成する'(_入力,_出力),!. バイナリファイルの入出力を確保し(_バイナリファイル,_コピーファイル,_入力,_出力) :- open(_バイナリファイル,read,_入力,[type(binary)]), open(_コピーファイル,write,_出力,[type(binary)]). '_入力を読み込み、バイト数を調べて表示し、コピーを_出力に作成する'(_入力,_出力) :- '_入力を読み込み、'(_入力,L), 'バイト数を調べて表示し、'(L), 'コピーを_出力に作成する'(_出力,L). '_入力を読み込み、'(_入力,[]) :- '_入力のat_end_of_streamを検出したら、_入力を閉じて終了する'(_入力). '_入力を読み込み、'(_入力,L) :- '_入力を読み込んで行く'(_入力,L). '_入力のat_end_of_streamを検出したら、_入力を閉じて終了する'(_入力) :- at_end_of_stream(_入力), close(_入力). '_入力を読み込んで行く'(_入力,[_バイトコード|R]) :- get_byte(_入力,_バイトコード), '_入力を読み込み、'(_入力,R). 'バイト数を調べて表示し、'(L) :- length(L,_バイト数), writef('バイト数 = %w\n',[_バイト数]). コピーを_出力に作成する(_出力,[]) :- '_出力を閉じて終了する'(_出力). コピーを_出力に作成する(_出力,L) :- コピーを_出力に作成して行く(_出力,L). '_出力を閉じて終了する'(_出力) :- close(_出力). コピーを_出力に作成して行く(_出力,[_バイトコード|R]) :- put_code(_出力,_バイトコード), コピーを_出力に作成する(_出力,R).