このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 132代目 #438 # 1] 授業単元: プログラミング実習 # [2] 問題文(含コード&リンク): # http://ime.nu/kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10181.txt # # 〜課題1〜 # 変数a,b,cへ値を読み込み、方程式ax2(axの二乗)+bx+c=0の会を出力するプログラムを作成せよ。ただし、a=/0(aノット0)の場合の判別式はD=b2-4acで与えられるものとし、 # 解の公式は-b+-4ac/2aで与えられるものとする。虚数解となる場合はたとえばx=3+5i,x=3-5iのように実数部と虚数部がわかるように出力せよ。すべての場合を見落とさず考えよ。 # ルートの関数はsqrt関数を使う。たとえば√2.5を求める場合、 # double a; # a=sqrt(2.5); /*√2.5をaに代入*/ # のように書く。ただし、sqrtの()内に与えられる数(変数も指定できる)は正の実数(double型)でなければならない。 # :- op(250,xf,i). 二次方程式の解(0,B,C,X) :- X is (-1) * C / B. 二次方程式の解(A,B,C,X) :-   0.0 is B^2 - 4 * A * C,   X is ((-1) * B) / (2 * A). 二次方程式の解(A,B,C,X) :-   U is B^2 - 4 * A * C,   U > 0.0,   X is ((-1) * B) + sqrt(U)) / (2 * A). 二次方程式の解(A,B,C,X) :-   U is B^2 - 4 * A * C,   U > 0.0,   X is ((-1) * B) - sqrt(U)) / (2 * A). 二次方程式の解(A,B,C,(D+Ei)) :-   U is B^2 - 4 * A * C,   U < 0.0,   D is ((-1) * B) / (2 * A),   E is U / (2 * A). 二次方程式の解(A,B,C,(D-Ei)) :-   U is B^2 - 4 * A * C,   U < 0.0,   D is ((-1) * B) / (2 * A),   E is U / (2 * A).