このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1354070278/142
#  [1] 授業単元:計算機実習 
#  [2] 問題文:http://ime.nu/ideone.com/baR2pW 
#        上記のプログラムに、複素数のひき算・掛け算・割り算の関数を追加し 
#        それを使った演算部分も追加しなさい。 
#  

:- op(200,xf,i).

複素数の加算(_a + _b i,_c + _d i,_a_plus_c + _b_plus_d i) :-
         _a_plus_c is _a + _c,
         _b_plus_d is _b + _d.

複素数の減算(_a + _b i,_c + _d i,_a_minus_c + _b_minus_d i) :-
         _a_minus_c is _a - _c,
         _b_minus_d is _b - _d.

複素数の乗算(_a + _b i,_c + _d i,_ac_minus_bd - _bc_plus_ad i) :-
         _ac_minus_bd is _a * _c - _b * _d,
         _bc_plus_ad is _b * _c + _a * _d.

複素数の除算(_a + _b i,_c + _d i,_ac_plus_bd_div_c_c_plus_d_d + _bc_minus_ad_div_c_c_plus_d_d i) :-
        _ac_plus_bd_div_c_c_plus_d_d is (_a * _c + _b * _d) / (_c * _c + _d * _d),
        _bc_minus_ad_div_c_c_plus_d_d is (_b * _c - _a * _d) / (_c * _c + _d * _d).