質問編集履歴
1
問題点の明確化
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,18 +1,26 @@
|
|
1
|
-
時計の針の先端の距離を求める問題で、コードの欠陥が分かりません。どなたかわかる方いらっしゃれば教えていただけると嬉しいです
|
1
|
+
時計の針の先端の距離を求める問題で、コードの欠陥が分かりません。どなたかわかる方いらっしゃれば教えていただけると嬉しいです。
|
2
|
+
|
3
|
+
WAとなってしますのでおそらく期待した結果と異なっています。説明が足りずすみません。
|
2
4
|
|
3
5
|
```Python3
|
4
6
|
|
5
7
|
import math
|
6
8
|
|
7
|
-
|
9
|
+
#a,bは短針、長針の長さでhは時間、mは分です。例えばh時m分のような
|
8
10
|
|
9
11
|
a,b,h,m = map(int, input().split())
|
12
|
+
|
13
|
+
#方針はstartで時刻によって短針と長針の間の角度を設定し、何分かによってstartから角度を引いていきます。180度より大きくならないようにdを置きました。
|
10
14
|
|
11
15
|
start = 30*h
|
12
16
|
|
13
17
|
d = min(abs(start - 5.5 * m),360-abs(start - 5.5 * m))
|
14
18
|
|
15
19
|
m = int(d)
|
20
|
+
|
21
|
+
#短針と長針が重なった場合、三角形にならないのでelifにまわしました。90度の時も例外処理としました。
|
22
|
+
|
23
|
+
#if文では余弦定理を使って距離を出しています。
|
16
24
|
|
17
25
|
if m!=90 and m!= 0 and m!= 180:
|
18
26
|
|