アプリ版:「スタンプのみでお礼する」機能のリリースについて

長文申し訳ありません。次の問題がわかりません。わかる方、プログラミングのやり方を添えて答えていただけないでしょうか?

2、測値線
地球上の2地点の緯度・経度から2地点間の(大円に沿った)最短距離を 求めるプログラムを作成し,京都−ローマ間の距離を求めよ。 ここで,大円とは球の中心を含む平面と球との交線のことである。 また,地球は回転楕円体ではなく半径 6370 km の球であるとしてよい。 京都とローマの緯度・経度は次の値を用いること。

京都 北緯35度00分30秒 東経135度46分16秒 ローマ 北緯41度53分35秒 東経 12度28分60秒

ヒント: 球上の異なる2点を A, B,球の中心を O とする。 角 AOB のなす角がわかれば AB 間の最短距離(弧 AB の長さ)が計算できる。 角 AOB のなす角は OA ベクトルと OB ベクトルの内積から求められる (cos の逆関数 arccos を利用せよ)。 OA ベクトルと OB ベクトルの内積は A と B の座標がわかれば計算可能である。 半径 r の球面上の緯度θ,経度φにある点の座標 (x, y, z) は r, θ, φ を使って次のように表される。

x = r cosθ cosφ y = r cosθ sinφ z = r sinθ

cos や arccos などの関数は numpy モジュールに含まれている。

A 回答 (1件)

ヒント中の計算式に座標を代入すると内積が求められるって書いてます。


更に角AOBのなす角は与えられた内積をacrcosを利用して求めよと。

もうプログラムがわからないという以前の、日本語の読解力の問題かと
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!