このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 133代目 #6 # # 問題4 # 平面上の2点(x1,y1)、(x2,y2)を入力し、それら2点間の距離を算出するプログラムを作成せよ。Aの平方根はsqrt(A)という数学関数で算出される(Aは引数でdouble型)。 # 数学関数を使用する場合、というファイルから情報を得なければならないので、#includeの # 下の行に#includeという命令文を付け加えなければならない(2つのinclude文)。実行結果の例を以下に示す。 # ------------------------------------------------ # x1:0 # y1:0 # x2:1 # y2:1 # この2点間の距離は1.414214です。 '平面上の2点(x1,y1)、(x2,y2)を入力し、それら2点間の距離を算出する。そして表示する' :- '平面上の2点(x1,y1)、(x2,y2)を入力し、それら2点間の距離を算出する。'(_2点間の距離), 'そして表示する。'(_2点間の距離). '平面上の2点(x1,y1)、(x2,y2)を入力し、それら2点間の距離を算出する。'(_2点間の距離) :- '平面上の2点(x1,y1)、(x2,y2)を入力し、'([x1,y1,x2,y2],[_x1,_y1,_x2,_y2]), 'それら2点間の距離を算出する。'(_x1,_y1,_x2,_y2,_2点間の距離). '平面上の2点(x1,y1)、(x2,y2)を入力し、'([],[]). '平面上の2点(x1,y1)、(x2,y2)を入力し、'(_座標点の要素名ならび,_座標点の要素の値ならび) :- '案内に従い、平面上の2点(x1,y1)、(x2,y2)、則ち4つの座標の要素を入力して行く'(_座標点の要素名ならび,_座標点の要素の値ならび). '案内に従い、平面上の2点(x1,y1)、(x2,y2)、則ち4つの座標の要素を入力して行く'([_座標点の要素名|R1],[_座標点の要素の値|R2]) :- atom_concat(_座標点の要素名,' : ',_案内), 催促付きで数を得る(_案内,_座標点の要素の値), '平面上の2点(x1,y1)、(x2,y2)を入力し、'(R1,R2). 催促付きで数を得る(_催促,_数) :- 催促付き行入力(_催促,_行), 数入力検査(_行,_数),!. 催促付きで数を得る(_催促,_数) :- 催促付きで数を得る(_催促,_数). 催促付き行入力(_催促,_行) :- 催促表示(_催促), 行入力(_行). 催促表示(_催促) :- write(_催促). 行入力(_行) :- read_line_to_codes(current_input,_文字コードならび), atom_codes(_行,_文字コードならび). 数入力検査(_行,_数) :- atom_number(_行,_数),!. 数入力検査(_行,_数) :- writef('入力された %w から数を得られませんでした。再入力をお願いします。\n',[_行]),fail. 'それら2点間の距離を算出する。'(_x1,_y1,_x2,_y2,_2点間の距離) :- _2点間の距離 is sqrt((_x2-_x1)^2 + (_y2-_y1)^2). 'そして表示する。'(_2点間の距離) :- writef('この2点間の距離は %w です。\n',[_2点間の距離]).