2024年度「プログラミング言語1」「プログラミング言語演習」のページ

練習問題

2024年4月25日出題

  1. 三角形の心についての問題。平面上の三角形の各頂点の座標を入力し、以下に示す点の座標を出力するプログラムをそれぞれ書け。(ヒント参考データあり)

    入出力の書式は各自で決め、取扱説明書に書式を記載すること。

    1. X1   内心
    2. X2   重心
    3. X3   外心
    4. X4   垂心
    5. X5   九点円の中心(外心と垂心の中点)
    6. X6   類似重心(ルモワーヌ点、グレーベ点)
    7. X7   ジェルゴンヌ点
    8. X8   ナーゲル点
    9. X9   ミッテンプンクト
    10. X10   シュピーカー心(内心とナーゲル点の中点)
    11. X11   フォイエルバッハ点
    12. X13   第一等角心(第一フェルマー点、フェルマー点、トリチェリ点)
    13. X14   第二等角心(第二フェルマー点)
    14. X15   第一等力点
    15. X16   第二等力点
    16. X17   第一ナポレオン点
    17. X18   第二ナポレオン点
    18. X20   ド・ロンシャン点
    19. X76   第三ブロカール点(三線三乗点の等角共役点、類似重心の等距離共役点)
    20. X179   第一安島マルファッティ点
    21. X400   イフ・マルファッティ点
    22. X483   安島マルファッティ円の根心
    23. X3082   外マルファッティ円の根心
    24. X40300   冪曲線の内心での接線の三線極点
    25. X40301   冪曲線の重心での接線の三線極点
    26. X40302   冪曲線の類似重心での接線の三線極点
ヒント

それぞれの心について、以下の手順を実行するプログラムを書くとよいでしょう。

  1. 六つの数を入力し、三角形の頂点の座標 A = ( x A , y A ) ,  B = ( x B , y B ) ,  C = ( x C , y C ) とする。
  2. B C , C A , A B の長さ a , b , c a = ( x B x C ) 2 + ( y B y C ) 2 b = ( x C x A ) 2 + ( y C y A ) 2 c = ( x A x B ) 2 + ( y A y B ) 2 で計算する。
  3. λ = f ( a , b , c ) ,  μ = f ( b , c , a ) ,  ν = f ( c , a , b ) を計算する。 ただし、 f は心ごとに決まっている関数で、「三角形の心」に書かれている。
  4. 心の座標 ( xX , yX ) x X = λ x A + μ x B + ν x C λ + μ + ν y X = λ y A + μ y B + ν y C λ + μ + ν で計算する。
  5. xXyXを出力する。
参考データ
A=(0,0), B=(1,0), C=(107169,835169) の場合
x座標 y座標
A 0.00000000000000000000 0.00000000000000000000
B 1.00000000000000000000 0.00000000000000000000
C 0.63313609467455621301 0.28005111399288123278
X1 0.61538461538461538461 0.13002373149669485807
X2 0.54437869822485207100 0.09335037133096041092
X3 0.50000000000000000000 −0.27467513278676788768
X4 0.63313609467455621301 0.82940137956641700816
X5 0.56656804733727810650 0.27736312338982456023
X6 0.65734265734265734265 0.16548474917761163755
X7 0.62878195824494808529 0.21135933131538206247
X8 0.40236686390532544378 0.02000365099949151662
X9 0.50217706821480406386 0.03434589133874958515
X10 0.50887573964497041419 0.07501369124809318735
X11 0.65627807552898169088 0.00659806289512023846
X13 0.63235186643026863855 0.27330023567132045619
X14 0.74947496667600103377 −0.23199325731633578896
X15 0.60001084289658913912 0.00510125810418640281
X16 0.86870501404856345756 0.75676261082436783735
X17 0.60648487724593142499 0.16620334832476699877
X18 2.88846611556870886989 0.13395990850957045121
X19 0.57371969022981985801 0.46868291882663322358
X20 0.36686390532544378698 −1.37875164513995278354
X76 0.34951848261584935065 0.03599228914466224491
X179 0.62274951511871649739 0.16626313529991982880
X400 0.20291214989211485883 0.00093530817578121231
X483 0.61932974223826671548 0.14828425608851742889
X3082 0.39493808304815276017 0.01561133969373209208
X40300 0.23570659596246913209 0.24440318766331022963
X40301 0.06889410413744296834 0.17744673070088119786
X40302 0.38818410669985637564 0.28473851968957226010
解答例1
ダウンロード

奈良女子大学生活環境学部文化情報学科生活情報通信科学コース