frac.cc分数計算ライブラリ
frac.heq.ccでインクルードするヘッダファイル
eq.cc掃き出し法プログラムの本体
co.dat行列
上記のすべてのファイルをダウンロードして、
c++ -o eq frac.cc eq.ccと入力し、コンパイルする。 Windowzの場合は、frac.cpp eq.cppのように拡張子を".cpp" にした方がコンパイルがスムーズにいくでしょう。
./eqで走ります。co.datの内容を書き換えた場合、 いちいちコンパイルし直さないといけないので、 この辺はより使いやすいように改良する余地があります。 co.datの行列のサイズを変えた時は、 eq.cc中のM_SIZE(stands for "matrix size") も変更しないとおかしな結果が出てきてしまいます。 あと、0の除算を想定していないので、 ここにも改良の余地があるでしょう。
frac(-5, 4), frac(1, 3), ...としてやれば良いでしょう。 コンストラクタの第1引数は分子、第2引数は分母です。 マイナスの符合は必ず分子につけます。
1/1 0/1 0/1 0/1 0/1 0/1 1/60 0/1 1/1 0/1 0/1 0/1 0/1 -3/20 0/1 0/1 1/1 0/1 0/1 0/1 3/4 0/1 0/1 0/1 1/1 0/1 0/1 -1/60 0/1 0/1 0/1 0/1 1/1 0/1 3/20 0/1 0/1 0/1 0/1 0/1 1/1 -3/4