[表示 : 全て 最新50 1-99 2chのread.cgiへ]
Update time : 05/09 09:04 / Filesize : 23 KB / Number-of Response : 44
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

いろんな言語で宿題 第四編



37 名前:デフォルトの名無しさん mailto:sage [2010/03/16(火) 15:28:29 ]
>>36
% Prolog
pgmファイルヘッダ(_pgmファイル,_マジックナンバー,_画像の幅方向サイズ,_画像の高さサイズ,画像の最大階調レベル) :-
   open(_pgmファイル,read,Input,[type(binary)]),
   pgmヘッダの読み取り(Input,_マジックナンバー,_画像の幅方向サイズ,_画像の高さサイズ,画像の最大階調レベル),
   close(Input),!.

pgmファイルヘッダの読み取り(Input,_マジックナンバー,_画像の幅方向サイズ,_画像の高さサイズ,画像の最大階調レベル) :-
   マジックナンバー(Input,_マジックナンバー),
   画像の幅方向サイズ(Input,_画像の幅方向サイズ),
   画像の幅方向サイズ(Input,_画像の幅方向サイズ),
   画像の高さサイズ(Input,_画像の高さサイズ),!.

マジックナンバー(Input,_マジックナンバー) :-
   findall(Y,(repeat,get_byte(Input,X),('Whitespace'(X),!,fail;char_code(Y,X))),L),
   concat_atom(L,_マジックナンバー),!.

画像の幅方向サイズ(Input,_画像の幅方向サイズ) :-
   findall(X,(repeat,get_byte(Input,X),('Whitespace'(X),!,fail;true)),L),
   number_codes(_画像の幅方向サイズ,L),!.

画像の高さサイズ(Input,_画像の高さサイズ) :-
   findall(X,(repeat,get_byte(Input,X),('Whitespace'(X),!,fail;true)),L),
   number_codes(_画像の高さサイズ,L),!.

画像の最大階調レベル(Input,_画像の最大階調レベル) :-
   findall(X,(repeat,get_byte(Input,X),('Whitespace'(X),!,fail;true)),L),
   number_codes(_画像の最大階調レベル,L),!.

'Whitespace'(X) :- X < 48,X >57,!.






[ 続きを読む ] / [ 携帯版 ]

全部読む 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<23KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef