10/01/16 10:42:01
>>192
% Prolog
現在の対ドル為替レート(92.69).
日本円をドルに変換する(_日本円,_ドル,_セント) :-
現在の対ドル為替レート(_現在の為替レート),
_ドル is truncate(float_integer_part(_日本円 / _現在の為替レート)),
_セント is truncate(float_fractional_part(_日本円 / _現在の為替レート) * 100).
日本円をドルとセントに変換して金種を計算する(_日本円,_ドルの金種,_セントの金種) :-
日本円をドルに変換する(_日本円,_ドル,_セント),
ドルの金種計算(_ドル,[100,50,20,10,5,2,1],_ドルの金種),
セントの金種計算(_セント,[50,25,10,5,1],_セントの金種).
ドルの金種計算(_,[],[]) :-
ドルの金種計算(D,[_金種|R1],[[_金種,_枚数]|R2]) :-
_枚数 is truncate(D // _金種),
D2 is truncate(D mod _金種),
ドルの金種計算(D2,R1,R2).
セントの金種計算(_,[],[]) :-
セントの金種計算(C,[_金種|R1],[[_金種,_枚数]|R2]) :-
_枚数 is truncate(C // _金種),
C2 is truncate(C mod _金種),
セントの金種計算(C2,R1,R2).